В этом руководстве мы узнаем о 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).