Java FileOutputStream (з прикладами)

У цьому посібнику ми дізнаємося про Java FileOutputStream та її методи за допомогою прикладів.

FileOutputStreamКлас java.ioпакета може використовуватися для запису даних (в байтах) для файлів.

Це розширює OutputStreamабстрактний клас.

Перш ніж дізнатись про FileOutputStream, обов’язково знайте про файли Java.

Створіть 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); 

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

Крім того, значення є необов’язковим булевим параметром. Якщо встановлено значення 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).

Цікаві статті...