English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
In questo tutorial, impareremo con esempi Java FileOutputStream e i suoi metodi.
La classe FileOutputStream del pacchetto java.io può essere utilizzata per scrivere dati (in unità di byte) nei file.
Eredita dall'astrazione OutputStream.
Prima di studiare FileOutputStream, assicurati di comprendereFile Java.
Per creare uno stream di output di file, dobbiamo prima importare il pacchetto java.io.FileOutputStream. Dopo aver importato il pacchetto, possiamo utilizzare Java per creare uno stream di output di file.
1.使用文件路径
// Include il parametro booleano FileOutputStream output = new FileOutputStream(String path, boolean value); // Non include il parametro booleano FileOutputStream output = new FileOutputStream(String path);
In questo caso, abbiamo creato uno stream di output che verrà collegato al percorso di file specificato.
Inoltre, value è un parametro booleano opzionale. Se viene impostato su true, i nuovi dati verranno aggiunti alla fine dei dati esistenti nel file. Altrimenti, i nuovi dati sovrascriveranno i dati esistenti nel file.
2.使用文件的对象
FileOutputStream output = new FileOutputStream(File fileObject);
Qui, abbiamo creato uno stream di output che si collegherà al file specificato da fileObject.
La classe FileOutputStream fornisce implementazioni per diversi metodi che si presentano nella classe OutputStream.
write() - Scrive un singolo byte nell'output stream di byte
write(byte[] array) - Scrive i byte dell'array specificato nell'output stream
write(byte[] array, int start, int length) - Scrive un numero di byte uguale a length dall'indirizzo start dell'array nell'output stream
import java.io.FileOutputStream; public class Main { public static void main(String[] args) { String data = "这是文件中的一行文本。"; try { FileOutputStream output = new FileOutputStream("output.txt"); byte[] array = data.getBytes(); //Scrivi byte nel file output.write(array); output.close(); } catch(Exception e) { e.getStackTrace(); } } }
Nell'esempio sopra, abbiamo creato uno stream di output di file chiamato output. Lo stream di output di file è collegato al fileoutput.txtCollegamento.
FileOutputStream output = new FileOutputStream("output.txt");
Per scrivere i dati nel file, abbiamo utilizzato il metodo write().
Qui, quando eseguiamo il programma,output.txtIl file scriverà il seguente contenuto.
Questa è una riga di testo nel file.
Attenzione:Nel programma, viene utilizzato il metodo getBytes() per convertire una stringa in un array di byte.
Per pulire lo stream di output, è possibile utilizzare il metodo flush(). Questo metodo forza lo stream di output a scrivere tutti i dati nel destinatario. Ad 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 = "这是flush方法的演示"; try { out = new FileOutputStream(" flush.txt"); //Utilizzare il metodo write() out.write(data.getBytes()); //Utilizzare il metodo flush() out.flush(); out.close(); } catch(Exception e) { e.getStackTrace(); } } }
Quando eseguiamo il programma, il fileflush.txtRiempito con il testo rappresentato da stringa data.
Per chiudere il flusso di output del file, è possibile utilizzare il metodo close(). Una volta chiamato questo metodo, non possiamo utilizzare i metodi di FileOutputStream.
Metodo | Descrizione del contenuto |
---|---|
finalize() | Assicurarsi che il metodo close() venga chiamato |
getChannel() | Restituisce l'oggetto FileChannel associato al flusso di output |
getFD() | Restituisce il descrittore di file associato al flusso di output |