V tej vadnici bomo s pomočjo primerov spoznali Java FileOutputStream in njene metode.
FileOutputStream
Razred java.io
paket se lahko uporablja za podatke za pisanje (v bajtih) do datotek.
Razširja OutputStream
abstraktni razred.
Preden se naučite FileOutputStream
, se prepričajte, da ste vedeli o datotekah Java.
Ustvarite FileOutputStream
Če želimo ustvariti izhodni tok datoteke, moramo najprej uvoziti java.io.FileOutputStream
paket. Ko uvozimo paket, lahko v Javi ustvarimo izhodni tok datotek.
1. Uporaba poti do datoteke
// Including the boolean parameter FileOutputStream output = new FileOutputStream(String path, boolean value); // Not including the boolean parameter FileOutputStream output = new FileOutputStream(String path);
Tu smo ustvarili izhodni tok, ki bo povezan z datoteko, določeno s potjo.
Vrednost je tudi neobvezen logični parameter. Če je nastavljeno na true
, bodo novi podatki dodani na konec obstoječih podatkov v datoteki. V nasprotnem primeru novi podatki prepišejo obstoječe podatke v datoteki.
2. Uporaba predmeta datoteke
FileOutputStream output = new FileOutputStream(File fileObject);
Tu smo ustvarili izhodni tok, ki bo povezan z datoteko, ki jo je določil fileObject
.
Metode FileOutputStream
FileOutputStream
Razred določa izvedb za različne načine predstaviti v OutputStream
razredu.
metoda write ()
write()
- zapisuje en bajt v izhodni tok datotekewrite(byte() array)
- zapisuje bajte iz podane matrike v izhodni tokwrite(byte() array, int start, int length)
- zapisuje število bajtov, enako dolžini, v izhodni tok iz polja, začenši z začetkom položaja
Primer: FileOutputStream za zapisovanje podatkov v datoteko
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(); ) ) )
V zgornjem primeru smo ustvarili izhodni tok datoteke z imenom output. Izhodni tok datoteke je povezan z datoteko output.txt .
FileOutputStream output = new FileOutputStream("output.txt");
Za zapisovanje podatkov v datoteko smo uporabili write()
metodo.
Ko zaženemo program, je datoteka output.txt napolnjena z naslednjo vsebino.
This is a line of text inside the file.
Opomba : getBytes()
Metoda, uporabljena v programu, pretvori niz v niz bajtov.
flush () metoda
Za čiščenje izhodnega toka lahko uporabimo flush()
metodo. Ta metoda prisili izhodni tok, da zapiše vse podatke na cilj. Na primer
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(); ) ) )
Ko zaženemo program, se datoteka flush.txt napolni z besedilom, ki ga predstavlja niz data
.
metoda close ()
Če želimo zapreti izhodni tok datoteke, lahko uporabimo close()
metodo. Ko je metoda enkrat poklicana, ne moremo uporabiti metod FileOutputStream
.
Druge metode FileOutputStream
Metode | Opisi |
---|---|
finalize() | zagotavlja, da je close() metoda poklicana |
getChannel() | vrne objekt, FileChannel povezan z izhodnim tokom |
getFD() | vrne deskriptor datoteke, povezan z izhodnim tokom |
Če želite izvedeti več, obiščite Java FileOutputStream (uradna dokumentacija Java).