Java FileOutputStream (z przykładami)

W tym samouczku dowiemy się o języku Java FileOutputStream i jego metodach za pomocą przykładów.

FileOutputStreamKlasa java.iopakietu mogą być używane do zapisu danych (w bajtach) do plików.

Rozszerza OutputStreamklasę 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.FileOutputStreampakiet. 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

FileOutputStreamKlasa zawiera implementacje dla różnych sposobów przedstawienia w OutputStreamklasie.

write () Metoda

  • write() - zapisuje pojedynczy bajt do strumienia wyjściowego pliku
  • write(byte() array) - zapisuje bajty z określonej tablicy do strumienia wyjściowego
  • write(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 FileChannelskojarzony 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).

Interesujące artykuły...