W tym samouczku dowiemy się o języku Java FileOutputStream i jego metodach za pomocą przykładów.
FileOutputStream
Klasa java.io
pakietu mogą być używane do zapisu danych (w bajtach) do plików.
Rozszerza OutputStream
klasę abstrakcyjną.
Zanim się o tym dowiesz FileOutputStream
, upewnij się, że wiesz o plikach Java.
Utwórz FileOutputStream
Aby utworzyć strumień wyjściowy pliku, musimy najpierw zaimportować java.io.FileOutputStream
pakiet. Po zaimportowaniu pakietu, oto jak możemy utworzyć strumień wyjściowy pliku w Javie.
1. Użycie ścieżki do pliku
// Including the boolean parameter FileOutputStream output = new FileOutputStream(String path, boolean value); // Not including the boolean parameter FileOutputStream output = new FileOutputStream(String path);
Tutaj utworzyliśmy strumień wyjściowy, który zostanie połączony z plikiem określonym przez ścieżkę.
Wartość jest również opcjonalnym parametrem boolowskim. Jeśli jest ustawiona na true
, nowe dane zostaną dołączone na końcu istniejących danych w pliku. W przeciwnym razie nowe dane zastępują istniejące dane w pliku.
2. Korzystanie z obiektu pliku
FileOutputStream output = new FileOutputStream(File fileObject);
Tutaj utworzyliśmy strumień wyjściowy, który zostanie połączony z plikiem określonym przez fileObject
.
Metody FileOutputStream
FileOutputStream
Klasa zawiera implementacje dla różnych sposobów przedstawienia w OutputStream
klasie.
write () Metoda
write()
- zapisuje pojedynczy bajt do strumienia wyjściowego plikuwrite(byte() array)
- zapisuje bajty z określonej tablicy do strumienia wyjściowegowrite(byte() array, int start, int length)
- zapisuje liczbę bajtów równą długości do strumienia wyjściowego z tablicy zaczynając od pozycji początkowej
Przykład: FileOutputStream, aby zapisać dane do pliku
import java.io.FileOutputStream; public class Main ( public static void main(String() args) ( String data = "This is a line of text inside the file."; try ( FileOutputStream output = new FileOutputStream("output.txt"); byte() array = data.getBytes(); // Writes byte to the file output.write(array); output.close(); ) catch(Exception e) ( e.getStackTrace(); ) ) )
W powyższym przykładzie utworzyliśmy strumień wyjściowy pliku o nazwie output. Strumień wyjściowy pliku jest powiązany z plikiem output.txt .
FileOutputStream output = new FileOutputStream("output.txt");
Aby zapisać dane do pliku, skorzystaliśmy z write()
metody.
Tutaj, kiedy uruchamiamy program, plik output.txt jest wypełniony następującą treścią.
This is a line of text inside the file.
Uwaga : getBytes()
Metoda użyta w programie konwertuje ciąg znaków na tablicę bajtów.
flush () Metoda
Aby wyczyścić strumień wyjściowy, możemy użyć flush()
metody. Ta metoda wymusza na strumieniu wyjściowym zapis wszystkich danych w miejscu docelowym. Na przykład,
import java.io.FileOutputStream; import java.io.IOException; public class Main ( public static void main(String() args) throws IOException ( FileOutputStream out = null; String data = "This is demo of flush method"; try ( out = new FileOutputStream(" flush.txt"); // Using write() method out.write(data.getBytes()); // Using the flush() method out.flush(); out.close(); ) catch(Exception e) ( e.getStackTrace(); ) ) )
Kiedy uruchamiamy program, plik flush.txt jest wypełniany tekstem reprezentowanym przez łańcuch data
.
close () Metoda
Aby zamknąć strumień wyjściowy pliku, możemy użyć close()
metody. Po wywołaniu metody nie możemy używać metod FileOutputStream
.
Inne metody FileOutputStream
Metody | Opisy |
---|---|
finalize() | zapewnia close() wywołanie metody |
getChannel() | zwraca obiekt FileChannel skojarzony ze strumieniem wyjściowym |
getFD() | zwraca deskryptor pliku powiązany ze strumieniem wyjściowym |
Aby dowiedzieć się więcej, odwiedź witrynę Java FileOutputStream (oficjalna dokumentacja Java).