Java FileOutputStream (con esempi)

In questo tutorial impareremo a conoscere Java FileOutputStream e i suoi metodi con l'aiuto di esempi.

La FileOutputStreamclasse del java.iopacchetto può essere utilizzata per scrivere dati (in byte) nei file.

Estende la OutputStreamclasse astratta.

Prima di saperne di più FileOutputStream, assicurati di conoscere i file Java.

Crea un FileOutputStream

Per creare un flusso di output di file, dobbiamo java.io.FileOutputStreamprima importare il pacchetto. Una volta importato il pacchetto, ecco come possiamo creare un flusso di output di file in Java.

1. Utilizzo del percorso del file

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

Qui abbiamo creato un flusso di output che sarà collegato al file specificato dal percorso.

Inoltre, value è un parametro booleano facoltativo. Se è impostato su true, i nuovi dati verranno aggiunti alla fine dei dati esistenti nel file. In caso contrario, i nuovi dati sovrascrivono i dati esistenti nel file.

2. Utilizzo di un oggetto del file

 FileOutputStream output = new FileOutputStream(File fileObject); 

Qui abbiamo creato un flusso di output che sarà collegato al file specificato da fileObject.

Metodi di FileOutputStream

La FileOutputStreamclasse fornisce implementazioni per diversi metodi presenti nella OutputStreamclasse.

metodo write ()

  • write() - scrive il singolo byte nel flusso di output del file
  • write(byte() array) - scrive i byte dall'array specificato nel flusso di output
  • write(byte() array, int start, int length) - scrive il numero di byte pari alla lunghezza nel flusso di output da un array a partire dalla posizione iniziale

Esempio: FileOutputStream per scrivere dati su un file

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

Nell'esempio precedente, abbiamo creato un flusso di output di file denominato output. Il flusso di output del file è collegato al file output.txt .

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

Per scrivere dati nel file, abbiamo utilizzato il write()metodo.

Qui, quando eseguiamo il programma, il file output.txt viene riempito con il seguente contenuto.

 This is a line of text inside the file. 

Nota : il getBytes()metodo utilizzato nel programma converte una stringa in un array di byte.

metodo flush ()

Per cancellare il flusso di output, possiamo usare il flush()metodo. Questo metodo forza il flusso di output a scrivere tutti i dati nella destinazione. Per esempio,

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

Quando eseguiamo il programma, il file flush.txt viene riempito con il testo rappresentato dalla stringa data.

metodo close ()

Per chiudere il flusso di output del file, possiamo usare il close()metodo. Una volta chiamato il metodo, non possiamo usare i metodi di FileOutputStream.

Altri metodi di FileOutputStream

Metodi Descrizioni
finalize() assicura che il close()metodo venga chiamato
getChannel() restituisce l'oggetto FileChannelassociato al flusso di output
getFD() restituisce il descrittore di file associato al flusso di output

Per saperne di più, visita Java FileOutputStream (documentazione Java ufficiale).

Articoli interessanti...