Java FileOutputStream (esimerkkien kanssa)

Tässä opetusohjelmassa opitaan Java FileOutputStreamista ja sen menetelmistä esimerkkien avulla.

FileOutputStreamLuokan java.iopaketti voidaan käyttää kirjoittaa tietoja (tavuina) tiedostoihin.

Se laajentaa OutputStreamabstraktia luokkaa.

Ennen kuin opit FileOutputStream, muista tietää Java-tiedostoista.

Luo FileOutputStream

Tiedoston tulostusvirran luomiseksi meidän on java.io.FileOutputStreamensin tuotava paketti. Kun tuot paketin, voimme luoda tiedostojen ulostulovirran Java-tiedostoon seuraavasti.

1. Tiedoston polun käyttäminen

 // Including the boolean parameter FileOutputStream output = new FileOutputStream(String path, boolean value); // Not including the boolean parameter FileOutputStream output = new FileOutputStream(String path); 

Tässä olemme luoneet lähtövirran, joka linkitetään polun määrittelemään tiedostoon.

Arvo on myös valinnainen looginen parametri. Jos se on asetettu arvoon true, uudet tiedot liitetään tiedostossa olevien tietojen loppuun. Muuten uudet tiedot korvaavat tiedostossa olevat tiedot.

2. Tiedoston objektin käyttäminen

 FileOutputStream output = new FileOutputStream(File fileObject); 

Tässä olemme luoneet lähtövirran, joka linkitetään käyttäjän määrittelemään tiedostoon fileObject.

FileOutputStreamin menetelmät

FileOutputStreamLuokka antaa toteutuksia eri menetelmiä esittää, että OutputStreamluokan.

write () -menetelmä

  • write() - kirjoittaa yhden tavun tiedoston ulostulovirtaan
  • write(byte() array) - kirjoittaa tavut määritetystä taulukosta lähtövirtaan
  • write(byte() array, int start, int length) - kirjoittaa tavujen määrän, joka on yhtä suuri kuin lähtövirran matriisista lähtöpaikan alusta alkaen

Esimerkki: FileOutputStream tietojen kirjoittamiseen tiedostoon

 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(); ) ) ) 

Yllä olevassa esimerkissä olemme luoneet tiedostojen lähtövirran nimeltään output. Tiedoston ulostulovirta on linkitetty tiedostoon output.txt .

 FileOutputStream output = new FileOutputStream("output.txt"); 

Tietojen kirjoittamiseen tiedostoon olemme käyttäneet write()menetelmää.

Tässä, kun suoritamme ohjelmaa, output.txt- tiedosto täytetään seuraavalla sisällöllä.

 This is a line of text inside the file. 

Huomaa : Ohjelmassa getBytes()käytetty menetelmä muuntaa merkkijonon tavujoukoksi.

huuhtele () menetelmä

Lähtövirran tyhjentämiseksi voimme käyttää flush()menetelmää. Tämä menetelmä pakottaa lähtövirran kirjoittamaan kaiken datan kohteeseen. Esimerkiksi,

 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(); ) ) ) 

Kun suoritamme ohjelmaa, tiedosto flush.txt on täytetty merkkijonon edustamalla tekstillä data.

sulje () Menetelmä

Tiedoston tulostusvirran sulkemiseksi voimme käyttää close()menetelmää. Kun menetelmä on kutsuttu, emme voi käyttää menetelmiä FileOutputStream.

Muut FileOutputStreamin menetelmät

Menetelmät Kuvaukset
finalize() varmistaa, että close()menetelmää kutsutaan
getChannel() palauttaa FileChannellähtövirtaan liittyvän objektin
getFD() palauttaa lähtövirtaan liittyvän tiedostokuvaajan

Lisätietoja on Java FileOutputStream -sivustossa (virallinen Java-dokumentaatio).

Mielenkiintoisia artikkeleita...