Java BufferedReader

📖 Java BufferedReader

BufferedReader is a character input stream that reads text from a character-input stream efficiently.
It buffers characters to provide efficient reading of characters, arrays, and lines.

  • Package: java.io

  • Superclass: Reader

  • Often used with FileReader for reading text files.


✅ Syntax


 


 1. Reading a File Line by Line


 

  • readLine() reads a full line from the file.

  • Returns null when end-of-file (EOF) is reached.


 2. Reading a File Character by Character


 

  • read() reads one character at a time.

  • Returns -1 at EOF.


 3. Reading from Console Using BufferedReader


 

  • InputStreamReader(System.in) converts byte stream to character stream.

  • BufferedReader efficiently reads text from console.


 4. Wrapping BufferedReader with FileReader (Best Practice)

BufferedReader br = new BufferedReader(new FileReader("example.txt"));
  • BufferedReader wraps FileReader for efficiency.

  • Reads lines and characters faster than FileReader alone.


 5. Important Methods

Method Description
read() Reads a single character
readLine() Reads a full line of text
close() Closes the stream
ready() Checks if stream is ready to be read

✅ Best Practices

  1. Always use try-with-resources to automatically close the stream.

  2. Use BufferedReader instead of FileReader for large files.

  3. Use readLine() to process files line by line.


Summary

  • BufferedReader = Efficient character input stream

  • Reads lines or characters

  • Often wrapped around FileReader or InputStreamReader

  • Preferred for text file reading and console input

You may also like...