V tomto výukovém programu se na příkladech seznámíme s Java FileOutputStream a jeho metodami.
FileOutputStreamTřída java.iobalíček lze použít k záznamových dat (v bytech) k souborům.
Rozšiřuje OutputStreamabstraktní třídu.

Než se o tom dozvíte FileOutputStream, nezapomeňte vědět o souborech Java.
Vytvořte FileOutputStream
Abychom mohli vytvořit výstupní proud souboru, musíme java.io.FileOutputStreamnejprve importovat balíček. Jakmile naimportujeme balíček, můžeme v Java vytvořit výstupní datový proud souboru.
1. Pomocí cesty k souboru
// Including the boolean parameter FileOutputStream output = new FileOutputStream(String path, boolean value); // Not including the boolean parameter FileOutputStream output = new FileOutputStream(String path);
Zde jsme vytvořili výstupní proud, který bude propojen se souborem určeným cestou.
Hodnota je také volitelný logický parametr. Pokud je nastaveno na true, nová data budou připojena na konec stávajících dat v souboru. Jinak nová data přepíší existující data v souboru.
2. Použití objektu souboru
FileOutputStream output = new FileOutputStream(File fileObject);
Zde jsme vytvořili výstupní proud, který bude propojen se souborem určeným fileObject.
Metody FileOutputStream
FileOutputStreamTřída poskytuje implementace pro různé metody prezentovat ve OutputStreamtřídě.
metoda write ()
write()- zapíše jeden bajt do výstupního proudu souboruwrite(byte() array)- zapíše bajty ze zadaného pole do výstupního prouduwrite(byte() array, int start, int length)- zapíše počet bajtů rovných délce do výstupního proudu z pole počínaje od začátku pozice
Příklad: FileOutputStream pro zápis dat do souboru
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(); ) ) )
Ve výše uvedeném příkladu jsme vytvořili datový proud souboru s názvem výstup. Datový výstupní soubor je propojen se souborem output.txt .
FileOutputStream output = new FileOutputStream("output.txt");
K zápisu dat do souboru jsme použili write()metodu.
Tady, když spustíme program, je soubor output.txt naplněn následujícím obsahem.
This is a line of text inside the file.
Poznámka : getBytes()Metoda použitá v programu převádí řetězec na pole bajtů.
flush () metoda
K vymazání výstupního proudu můžeme použít flush()metodu. Tato metoda vynutí, aby výstupní proud zapisoval všechna data do cíle. Například,
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(); ) ) )
Když spustíme program, soubor flush.txt je vyplněn textem představovaným řetězcem data.
metoda close ()
K uzavření výstupního proudu souboru můžeme použít close()metodu. Jakmile je metoda volána, nemůžeme použít metody z FileOutputStream.
Další metody FileOutputStream
| Metody | Popisy |
|---|---|
finalize() | zajišťuje, že je close()metoda volána |
getChannel() | vrací objekt FileChannelpřidružený k výstupnímu proudu |
getFD() | vrací deskriptor souboru přidružený k výstupnímu proudu |
Další informace najdete v Java FileOutputStream (oficiální dokumentace Java).








