Java BufferedWriter (Dengan Contoh)

Dalam tutorial ini, kita akan belajar mengenai Java BufferedWriter dan kaedahnya dengan bantuan contoh.

The BufferedWritergolongan orang java.iopakej boleh digunakan dengan penulis-penulis lain untuk menulis data (dalam huruf) dengan lebih cekap.

Ia meluaskan kelas abstrak Writer.

Kerja BufferedWriter

Yang BufferedWritermengekalkan dalaman penampan 8192 watak-watak .

Semasa operasi menulis, watak ditulis ke penyangga dalaman dan bukannya cakera. Setelah buffer diisi atau penulis ditutup, keseluruhan watak dalam buffer ditulis ke cakera.

Oleh itu, bilangan komunikasi ke cakera dikurangkan. Inilah sebabnya mengapa menulis watak lebih cepat digunakan BufferedWriter.

Buat BufferedWriter

Untuk membuat BufferedWriter, kita mesti mengimport java.io.BufferedWriterpakej terlebih dahulu. Setelah kami mengimport pakej di sini adalah bagaimana kita dapat membuat penulis yang disangga.

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

Dalam contoh di atas, kami telah membuat BufferedWriterbuffer bernama dengan FileWriterfile bernama.

Di sini, penyangga dalaman BufferedWritermempunyai ukuran lalai 8192 aksara. Namun, kita dapat menentukan ukuran penyangga dalaman juga.

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

Penyangga akan membantu menulis watak ke fail dengan lebih berkesan.

Kaedah BufferedWriter

The BufferedWriterkelas menyediakan pelaksanaan untuk kaedah yang berbeza di dalam Writer.

tulis () Kaedah

  • write() - menulis satu watak untuk penyangga dalaman penulis
  • write(char() array) - menulis watak dari susunan yang ditentukan untuk penulis
  • write(String data) - menulis rentetan yang ditentukan kepada penulis

Contoh: BufferedWriter untuk menulis data ke Fail

 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(); ) ) ) 

Dalam contoh di atas, kami telah membuat penulis buffer bernama output bersama FileWriter. Penulis yang disangga dihubungkan dengan fail output.txt .

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

Untuk menulis data ke fail, kami telah menggunakan write()kaedahnya.

Di sini semasa kita menjalankan program, fail output.txt diisi dengan kandungan berikut.

 This is a line of text inside the file. 

kaedah siram ()

Untuk membersihkan penyangga dalaman, kita dapat menggunakan flush()kaedahnya. Kaedah ini memaksa penulis untuk menulis semua data yang ada dalam penyangga ke fail tujuan.

Sebagai contoh, andaikan kita mempunyai fail kosong bernama 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(); ) ) ) 

Pengeluaran

 Data dialirkan ke fail. 

Semasa kami menjalankan program, file output.txt diisi dengan teks yang diwakili oleh data rentetan.

tutup () Kaedah

Untuk menutup penulis yang disangga, kita boleh menggunakan close()kaedahnya. Setelah close()kaedah dipanggil, kita tidak dapat menggunakan penulis untuk menulis data.

Kaedah Lain BufferedWriter

Kaedah Penerangan
newLine() memasukkan baris baru kepada penulis
append() memasukkan watak yang ditentukan kepada penulis semasa

Untuk mengetahui lebih lanjut, lawati Java BufferedWriter (dokumentasi Java rasmi).

Artikel menarik...