I denna handledning lär vi oss om Java FileOutputStream och dess metoder med hjälp av exempel.
Paketets FileOutputStream
klass java.io
kan användas för att skriva data (i byte) till filerna.
Det utvidgar den OutputStream
abstrakta klassen.
Se FileOutputStream
till att du känner till Java-filer innan du lär dig mer .
Skapa en FileOutputStream
För att skapa en filutmatningsström måste vi först importera java.io.FileOutputStream
paketet. När vi väl har importerat paketet, här är hur vi kan skapa en filutmatningsström i Java.
1. Använda sökvägen till fil
// Including the boolean parameter FileOutputStream output = new FileOutputStream(String path, boolean value); // Not including the boolean parameter FileOutputStream output = new FileOutputStream(String path);
Här har vi skapat en utgångsström som kommer att länkas till filen som anges av sökvägen.
Värde är också en valfri boolesk parameter. Om den är inställd true
kommer den nya informationen att läggas till i slutet av befintliga data i filen. Annars skriver de nya uppgifterna över befintliga data i filen.
2. Använda ett objekt i filen
FileOutputStream output = new FileOutputStream(File fileObject);
Här har vi skapat en utgångsström som kommer att länkas till den fil som anges fileObject
.
Metoder för FileOutputStream
Den FileOutputStream
klass erbjuder implementeringar för olika metoder att presentera i OutputStream
klassen.
skriv () Metod
write()
- skriver den enda byten till filens utmatningsströmwrite(byte() array)
- skriver bytes från den angivna matrisen till utflödetwrite(byte() array, int start, int length)
- skriver antalet byte som är lika med längden till utmatningsströmmen från en matris som börjar från positionsstart
Exempel: FileOutputStream för att skriva data till en fil
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(); ) ) )
I exemplet ovan har vi skapat en filutgångsström med namnet output. Filutmatningsströmmen är länkad till filen output.txt .
FileOutputStream output = new FileOutputStream("output.txt");
För att skriva data till filen har vi använt write()
metoden.
Här, när vi kör programmet, fylls output.txt- filen med följande innehåll.
This is a line of text inside the file.
Obs : Den getBytes()
metod som används i programmet omvandlar en sträng till en array av bytes.
flush () Metod
För att rensa utströmmen kan vi använda flush()
metoden. Denna metod tvingar utströmmen att skriva all data till destinationen. Till exempel,
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(); ) ) )
När vi kör programmet fylls filen flush.txt med texten som representeras av strängen data
.
close () Metod
För att stänga filutmatningsströmmen kan vi använda close()
metoden. När metoden väl har anropats kan vi inte använda metoderna för FileOutputStream
.
Andra metoder för FileOutputStream
Metoder | Beskrivningar |
---|---|
finalize() | säkerställer att close() metoden anropas |
getChannel() | returnerar objektet som är FileChannel associerat med utdataströmmen |
getFD() | returnerar filbeskrivaren som är associerad med utdataströmmen |
För att lära dig mer, besök Java FileOutputStream (officiell Java-dokumentation).