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

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

В BufferedWriterкласа на java.ioпакета може да се използва с други писатели да пишат на данни (в знака) по-ефективно.

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

Работа на BufferedWriter

В BufferedWriterподдържа вътрешна буфер от 8192 знака .

По време на операцията за запис символите се записват във вътрешния буфер вместо на диска. След като буферът се запълни или записващото устройство се затвори, цели символи в буфера се записват на диска.

Следователно броят на комуникацията към диска е намален. Ето защо писането на символи се използва по-бързо 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клас осигурява приложения за различни методи, присъстващи в 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()методът бъде извикан, не можем да използваме писателя, за да запишем данните.

Други методи на буфериран писател

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

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

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