In diesem Tutorial lernen wir anhand von Beispielen Java FileOutputStream und seine Methoden kennen.
Die FileOutputStream
Klasse des java.io
Pakets kann verwendet werden, um Daten (in Bytes) in die Dateien zu schreiben.
Es erweitert die OutputStream
abstrakte Klasse.
Bevor Sie sich damit vertraut FileOutputStream
machen, sollten Sie sich mit Java-Dateien vertraut machen.
Erstellen Sie einen FileOutputStream
Um einen Dateiausgabestream zu erstellen, müssen wir java.io.FileOutputStream
zuerst das Paket importieren . Sobald wir das Paket importiert haben, können wir wie folgt einen Dateiausgabestream in Java erstellen.
1. Verwenden Sie den Pfad zur Datei
// Including the boolean parameter FileOutputStream output = new FileOutputStream(String path, boolean value); // Not including the boolean parameter FileOutputStream output = new FileOutputStream(String path);
Hier haben wir einen Ausgabestream erstellt, der mit der durch den Pfad angegebenen Datei verknüpft wird.
Außerdem ist value ein optionaler boolescher Parameter. Wenn dies festgelegt ist true
, werden die neuen Daten an das Ende der vorhandenen Daten in der Datei angehängt. Andernfalls überschreiben die neuen Daten die vorhandenen Daten in der Datei.
2. Verwenden eines Objekts der Datei
FileOutputStream output = new FileOutputStream(File fileObject);
Hier haben wir einen Ausgabestream erstellt, der mit der von angegebenen Datei verknüpft wird fileObject
.
Methoden von FileOutputStream
Die FileOutputStream
Klasse bietet Implementierungen für verschiedene in der OutputStream
Klasse vorhandene Methoden .
write () Methode
write()
- schreibt das einzelne Byte in den Dateiausgabestreamwrite(byte() array)
- schreibt die Bytes aus dem angegebenen Array in den Ausgabestreamwrite(byte() array, int start, int length)
- schreibt die Anzahl der Bytes gleich der Länge des Ausgabestreams aus einem Array ab dem Positionsstart
Beispiel: FileOutputStream zum Schreiben von Daten in eine Datei
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(); ) ) )
Im obigen Beispiel haben wir einen Dateiausgabestream mit dem Namen output erstellt. Der Dateiausgabestream ist mit der Datei output.txt verknüpft .
FileOutputStream output = new FileOutputStream("output.txt");
Um Daten in die Datei zu schreiben, haben wir die write()
Methode verwendet.
Wenn wir das Programm ausführen , wird die Datei output.txt mit dem folgenden Inhalt gefüllt.
This is a line of text inside the file.
Hinweis : Die getBytes()
im Programm verwendete Methode konvertiert eine Zeichenfolge in ein Array von Bytes.
flush () Methode
Um den Ausgabestream zu löschen, können wir die flush()
Methode verwenden. Diese Methode zwingt den Ausgabestream, alle Daten in das Ziel zu schreiben. Beispielsweise,
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(); ) ) )
Wenn wir das Programm ausführen, wird die Datei flush.txt mit dem durch die Zeichenfolge dargestellten Text gefüllt data
.
close () Methode
Um den Dateiausgabestream zu schließen, können wir die close()
Methode verwenden. Sobald die Methode aufgerufen wurde, können wir die Methoden von nicht mehr verwenden FileOutputStream
.
Andere Methoden von FileOutputStream
Methoden | Beschreibungen |
---|---|
finalize() | stellt sicher, dass die close() Methode aufgerufen wird |
getChannel() | Gibt das Objekt zurück, das FileChannel dem Ausgabestream zugeordnet ist |
getFD() | Gibt den dem Ausgabestream zugeordneten Dateideskriptor zurück |
Weitere Informationen finden Sie unter Java FileOutputStream (offizielle Java-Dokumentation).