Khi ghi dữ liệu vào Stream dùng BufferedWriter, sau khi gọi write() dữ liệu chỉ bị buffer, chưa in ra.
Phương thức flush() dùng để đẩy nội dung buffer xuống Stream bên dưới.
Ví dụ
Chương trình in dòng ra console (Standard Output Stream). Gọi write() với String cần in.
import java.io.BufferedWriter; import java.io.IOException; import java.io.OutputStreamWriter; public class BufferedWriterExample { public static void main(String args[]) throws IOException { //Instantiating the OutputStreamWriter class OutputStreamWriter out = new OutputStreamWriter(System.out); //Instantiating the BufferedWriter BufferedWriter writer = new BufferedWriter(out); //Writing data to the console writer.write("Hello welcome to Tutorialspoint"); } }
Vì chưa flush buffer của BufferedWriter, không có gì in ra.
Giải quyết: gọi flush() sau write().
Ví dụ
import java.io.BufferedWriter; import java.io.IOException; import java.io.OutputStreamWriter; public class BufferedWriterExample { public static void main(String args[]) throws IOException { //Instantiating the OutputStreamWriter class OutputStreamWriter out = new OutputStreamWriter(System.out); //Instantiating the BufferedWriter BufferedWriter writer = new BufferedWriter(out); //Writing data to the console writer.write("Hello welcome to Tutorialspoint"); writer.flush(); } }
Kết quả
Hello welcome to Tutorialspoint