I denne vejledning lærer vi om Java FileOutputStream og dens metoder ved hjælp af eksempler.
Den FileOutputStream
klasse af java.io
pakken kan bruges til at skrive data (i byte) til filerne.
Det udvider den OutputStream
abstrakte klasse.
Før du lærer om FileOutputStream
, skal du sørge for at vide om Java-filer.
Opret en FileOutputStream
For at oprette en filoutputstrøm skal vi først importere java.io.FileOutputStream
pakken. Når vi først har importeret pakken, kan du her oprette en filoutputstrøm i Java.
1. Brug af stien til fil
// Including the boolean parameter FileOutputStream output = new FileOutputStream(String path, boolean value); // Not including the boolean parameter FileOutputStream output = new FileOutputStream(String path);
Her har vi oprettet en outputstrøm, der linkes til den fil, der er angivet af stien.
Værdi er også en valgfri boolsk parameter. Hvis det er indstillet til true
, tilføjes de nye data i slutningen af de eksisterende data i filen. Ellers overskriver de nye data de eksisterende data i filen.
2. Brug af et objekt i filen
FileOutputStream output = new FileOutputStream(File fileObject);
Her har vi oprettet en outputstrøm, der linkes til den fil, der er specificeret af fileObject
.
Metoder til FileOutputStream
Den FileOutputStream
klasse giver implementeringer for forskellige metoder præsentere i OutputStream
klasse.
skriv () metode
write()
- skriver enkeltbyten til filens outputstrømwrite(byte() array)
- skriver bytes fra det specificerede array til output streamwrite(byte() array, int start, int length)
- skriver antallet af byte svarende til længden til outputstrømmen fra en matrix startende fra positionens start
Eksempel: FileOutputStream til at skrive data til 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 ovenstående eksempel har vi oprettet en filoutputstrøm med navnet output. Filoutputstrømmen er knyttet til filen output.txt .
FileOutputStream output = new FileOutputStream("output.txt");
For at skrive data til filen har vi brugt write()
metoden.
Her, når vi kører programmet, udfyldes output.txt- filen med følgende indhold.
This is a line of text inside the file.
Bemærk : Den getBytes()
metode, der bruges i programmet, konverterer en streng til en række bytes.
flush () Metode
For at rydde outputstrømmen kan vi bruge flush()
metoden. Denne metode tvinger outputstrømmen til at skrive alle data til destinationen. For eksempel,
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ører programmet, udfyldes filen flush.txt med teksten repræsenteret af strengen data
.
close () Metode
For at lukke filens outputstrøm kan vi bruge close()
metoden. Når metoden er kaldt, kan vi ikke bruge metoderne til FileOutputStream
.
Andre metoder til FileOutputStream
Metoder | Beskrivelser |
---|---|
finalize() | sikrer, at close() metoden kaldes |
getChannel() | returnerer objektet, der er FileChannel tilknyttet outputstrømmen |
getFD() | returnerer filbeskrivelsen, der er knyttet til outputstrømmen |
For at lære mere, besøg Java FileOutputStream (officiel Java-dokumentation).