Java FileOutputStream (с примери)

В този урок ще научим за Java FileOutputStream и неговите методи с помощта на примери.

В FileOutputStreamкласа на java.ioпакета може да се използва за запис на данни (в байтове) до файловете.

Той разширява OutputStreamабстрактния клас.

Преди да научите за FileOutputStream, не забравяйте да знаете за Java Files.

Създайте FileOutputStream

За да създадем изходен поток на файл, първо трябва да импортираме java.io.FileOutputStreamпакета. След като импортираме пакета, ето как можем да създадем поток за извеждане на файлове в Java.

1. Използване на пътя към файла

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

Тук създадохме изходен поток, който ще бъде свързан с файла, посочен от пътя.

Също така, value е незадължителен булев параметър. Ако е зададено на true, новите данни ще бъдат добавени в края на съществуващите данни във файла. В противен случай новите данни заместват съществуващите във файла.

2. Използване на обект от файла

 FileOutputStream output = new FileOutputStream(File fileObject); 

Тук създадохме изходен поток, който ще бъде свързан с файла, посочен от fileObject.

Методи на FileOutputStream

В FileOutputStreamклас осигурява приложения за различни методи представят в OutputStreamклас.

метод write ()

  • write() - записва единичния байт в изходния поток на файла
  • write(byte() array) - записва байтовете от посочения масив в изходния поток
  • write(byte() array, int start, int length) - записва броя на байтовете, равен на дължината, в изходния поток от масив, започвайки от началото на позицията

Пример: FileOutputStream за записване на данни във файл

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

В горния пример създадохме изходен поток на файл с име output. Изходният поток на файл е свързан с файла output.txt .

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

За да запишем данни във файла, използвахме write()метода.

Тук, когато стартираме програмата, файлът output.txt се пълни със следното съдържание.

 This is a line of text inside the file. 

Забележка : getBytes()Методът, използван в програмата, преобразува низ в масив от байтове.

flush () Метод

За да изчистим изходния поток, можем да използваме flush()метода. Този метод принуждава изходния поток да записва всички данни към местоназначението. Например,

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

Когато стартираме програмата, файлът flush.txt се запълва с текста, представен от низа data.

метод close ()

За да затворим изходния поток на файла, можем да използваме close()метода. След като методът бъде извикан, не можем да използваме методите на FileOutputStream.

Други методи на FileOutputStream

Методи Описания
finalize() гарантира, че close()методът е извикан
getChannel() връща обекта, FileChannelсвързан с изходния поток
getFD() връща файловия дескриптор, свързан с изходния поток

За да научите повече, посетете Java FileOutputStream (официална документация за Java).

Интересни статии...