BufferedReader and BufferedWriter in Java
The BufferedReader and BufferedWriter classes in Java are used for efficient reading and writing of text files. This tutorial provides a step-by-step guide with examples.
Step 1: Writing to a File using BufferedWriter
The BufferedWriter class writes text to a file efficiently by buffering the output. Below is an example:
import java.io.BufferedWriter; import java.io.FileWriter; import java.io.IOException; public class BufferedWriterExample { public static void main(String[] args) { try { BufferedWriter writer = new BufferedWriter(new FileWriter("bufferedOutput.txt")); writer.write("This is the first line of text.\n"); writer.write("BufferedWriter makes writing efficient!\n"); writer.close(); System.out.println("File written successfully using BufferedWriter."); } catch (IOException e) { System.out.println("An error occurred: " + e.getMessage()); } } }
Step 2: Reading from a File using BufferedReader
The BufferedReader class reads text from a file efficiently by buffering the input. Below is an example:
import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; public class BufferedReaderExample { public static void main(String[] args) { try { BufferedReader reader = new BufferedReader(new FileReader("bufferedOutput.txt")); String line; while ((line = reader.readLine()) != null) { System.out.println(line); } reader.close(); } catch (IOException e) { System.out.println("An error occurred: " + e.getMessage()); } } }
Step 3: Combining BufferedReader and BufferedWriter
Here is an example where text is read from one file using BufferedReader and written to another file using BufferedWriter:
import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; public class BufferedReaderWriterExample { public static void main(String[] args) { try { BufferedReader reader = new BufferedReader(new FileReader("inputFile.txt")); BufferedWriter writer = new BufferedWriter(new FileWriter("outputFile.txt")); String line; while ((line = reader.readLine()) != null) { writer.write(line); writer.newLine(); } reader.close(); writer.close(); System.out.println("File copied successfully using BufferedReader and BufferedWriter."); } catch (IOException e) { System.out.println("An error occurred: " + e.getMessage()); } } }
Summary
In this tutorial, you learned:
- How to write to a file using BufferedWriter
- How to read from a file using BufferedReader
- How to combine BufferedReader and BufferedWriter for file manipulation
The BufferedReader and BufferedWriter classes improve efficiency by reducing the number of I/O operations.