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

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

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

Це розширює OutputStreamWriterклас.

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

Створіть FileWriter

Для того, щоб створити програму запису файлів, Java.io.FileWriterспочатку потрібно імпортувати пакет. Як тільки ми імпортуємо пакет, ось як ми можемо створити програму запису файлів.

1. Використання імені файлу

 FileWriter output = new FileWriter(String name); 

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

2. Використання об’єкта файлу

 FileWriter input = new FileWriter(File fileObj); 

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

У наведеному вище прикладі дані зберігаються за допомогою кодування символів за замовчуванням.

Однак, оскільки Java 11, ми також можемо вказати тип кодування символів ( UTF8 або UTF16 ).

 FileWriter input = new FileWriter(String file, Charset cs); 

Тут ми використали Charsetклас для вказівки кодування символів записувача файлів.

Методи FileWriter

FileWriterКлас забезпечує реалізації для різних методів представлення в Writerкласі.

метод write ()

  • write() - пише один персонаж письменнику
  • write(char() array) - записує символи із зазначеного масиву до записувача
  • write(String data) - пише вказаний рядок до письменника

Приклад: FileWriter для запису даних у файл

 import java.io.FileWriter; public class Main ( public static void main(String args()) ( String data = "This is the data in the output file"; try ( // Creates a FileWriter FileWriter output = new FileWriter("output.txt"); // Writes the string to the file output.write(data); // Closes the writer output.close(); ) catch (Exception e) ( e.getStackTrace(); ) ) ) 

У наведеному вище прикладі ми створили програму запису файлів з іменем output. Зчитувач вихідних даних пов’язаний з файлом output.txt .

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

Для запису даних у файл ми використали write()метод.

Тут, коли ми запускаємо програму, файл output.txt заповнюється таким вмістом.

 This is a line of text inside the file. 

метод getEncoding ()

getEncoding()Метод може бути використаний , щоб отримати тип кодування, який використовується для запису даних. Наприклад,

 import java.io.FileWriter; import java.nio.charset.Charset; class Main ( public static void main(String() args) ( String file = "output.txt"; try ( // Creates a FileReader with default encoding FileWriter output1 = new FileWriter(file); // Creates a FileReader specifying the encoding FileWriter output2 = new FileWriter(file, Charset.forName("UTF8")); // Returns the character encoding of the reader System.out.println("Character encoding of output1: " + output1.getEncoding()); System.out.println("Character encoding of output2: " + output2.getEncoding()); // Closes the reader output1.close(); output2.close(); ) catch(Exception e) ( e.getStackTrace(); ) ) ) 

Вихідні дані

 Кодування символів виводу1: Cp1252 Кодування символів виводу2: UTF8 

У наведеному вище прикладі ми створили 2 програми для запису файлів з іменами output1 і output2.

  • output1 не визначає кодування символів. Отже, getEncoding()метод повертає кодування символів за замовчуванням.
  • output2 визначає кодування символів, UTF8 . Отже, getEncoding()метод повертає вказане кодування символів.

Примітка : Ми використовували Charset.forName()метод, щоб вказати тип кодування символів. Щоб дізнатись більше, відвідайте Java Charset (офіційна документація Java).

метод close ()

Щоб закрити програму запису файлів, ми можемо скористатися close()методом. Після виклику close()методу ми не можемо використовувати програму запису для запису даних.

Інші методи FileWriter

Метод Опис
flush() змушує записати всі дані, присутні в програмі запису, до відповідного пункту призначення
append() вставляє вказаний символ до поточного автора

Щоб дізнатись більше, відвідайте Java FileWriter (офіційна документація Java).

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