java.io BufferedReader and BufferedWriter are character-based I/O classes in Java that improve performance by using an internal buffer when reading or writing text data.
BufferedReader reads text line-by-line, while BufferedWriter writes text efficiently using a buffer.
// Creating BufferedReader and BufferedWriter objects
BufferedReader br = new BufferedReader(new FileReader("input.txt"));
BufferedWriter bw = new BufferedWriter(new FileWriter("output.txt"));
// Reading from a file and writing to another file using buffering
import java.io.*;
class BufferedExample {
public static void main(String[] args) throws Exception {
BufferedReader br = new BufferedReader(new FileReader("input.txt"));
BufferedWriter bw = new BufferedWriter(new FileWriter("output.txt"));
String line;
while ((line = br.readLine()) != null) {
bw.write(line);
bw.newLine();
}
br.close();
bw.close();
}
}
Each line from input.txt is read using readLine() and written to output.txt efficiently using a buffer.
A BufferedWriter doesn't write to disk immediately. It waits until the buffer is full (or you manually flush it).
Buffer Size limit for this demo: 8 characters.
Waiting for input...