Java BufferedWriter (с примерами)

В этом руководстве мы узнаем о Java BufferedWriter и его методах с помощью примеров.

BufferedWriterКласс java.ioпакета может быть использован с другими авторами , чтобы более эффективно записывать данные (в символах).

Он расширяет абстрактный класс Writer.

Работа BufferedWriter

BufferedWriterПоддерживает внутренний буфер 8192 символов .

Во время операции записи символы записываются во внутренний буфер, а не на диск. После заполнения буфера или закрытия записывающего устройства все символы в буфере записываются на диск.

Следовательно, количество обращений к диску сокращается. Вот почему написание символов выполняется быстрее BufferedWriter.

Создать BufferedWriter

Чтобы создать файл BufferedWriter, мы должны java.io.BufferedWriterсначала импортировать пакет. После того как мы импортируем пакет, вот как мы можем создать буферизованный писатель.

 // Creates a FileWriter FileWriter file = new FileWriter(String name); // Creates a BufferedWriter BufferedWriter buffer = new BufferedWriter(file); 

В приведенном выше примере мы создали BufferedWriterименованный буфер с указанным FileWriterфайлом.

Здесь внутренний буфер BufferedWriterимеет размер по умолчанию 8192 символа. Однако мы также можем указать размер внутреннего буфера.

 // Creates a BufferedWriter with specified size internal buffer BufferedWriter buffer = new BufferedWriter(file, int size); 

Буфер поможет более эффективно записывать символы в файлы.

Методы BufferedWriter

BufferedWriterКласс обеспечивает реализации для различных методов , присутствующих в Writer.

write () Метод

  • write() - записывает один символ во внутренний буфер писателя
  • write(char() array) - записывает символы из указанного массива в писатель
  • write(String data) - записывает указанную строку в писатель

Пример: BufferedWriter для записи данных в файл

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

В приведенном выше примере мы создали буферный писатель с именем output вместе с FileWriter. Буферизованный писатель связан с файлом output.txt .

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

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

Здесь, когда мы запускаем программу, файл output.txt заполняется следующим содержимым.

 This is a line of text inside the file. 

flush () Метод

Чтобы очистить внутренний буфер, мы можем использовать flush()метод. Этот метод заставляет модуль записи записывать все данные, имеющиеся в буфере, в целевой файл.

Например, предположим, что у нас есть пустой файл с именем output.txt .

 import java.io.FileWriter; import java.io.BufferedWriter; public class Main ( public static void main(String() args) ( String data = "This is a demo of the flush method"; try ( // Creates a FileWriter FileWriter file = new FileWriter(" flush.txt"); // Creates a BufferedWriter BufferedWriter output = new BufferedWriter(file); // Writes data to the file output.write(data); // Flushes data to the destination output.flush(); System.out.println("Data is flushed to the file."); output.close(); ) catch(Exception e) ( e.getStackTrace(); ) ) ) 

Вывод

 Данные сбрасываются в файл. 

Когда мы запускаем программу, файл output.txt заполняется текстом, представленным строковыми данными.

close () Метод

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

Другие методы BufferedWriter

Метод Описание
newLine() вставляет новую строку в писатель
append() вставляет указанный символ в текущий писатель

Чтобы узнать больше, посетите Java BufferedWriter (официальная документация по Java).

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