The read() method of PushbackReader Class in Java is used to read a single character from the stream. This method blocks the stream till:
- It has taken some input from the stream.
- Some IOException has occurred
- It has reached the end of the stream while reading.
Syntax:
public int read()
Parameters: This method does not accepts any parameters
Return Value: This method returns an integer value which is the integer value read from the stream. It can range from 0 to 65535. Else it returns -1 if no character has been read.
Exception: This method throws IOException if some error occurs while input output.
Below methods illustrates the working of read() method:
Program 1:
// Java program to demonstrate // PushbackReader read() method import java.io.*; import java.util.*; class GFG { public static void main(String[] args) { try { // Initializing a StringReader // and PushbackReader String s = "GeeksForGeeks" ; StringReader stringReader = new StringReader(s); PushbackReader pushbackReader = new PushbackReader(stringReader); // Get the character // to be read from the stream int ch; // Read the first 5 characters // to this reader using read() method // This will put the str in the stream // till it is read by the reader for ( int i = 0 ; i < 5 ; i++) { ch = pushbackReader.read(); System.out.println( "\nInteger value " + "of character read: " + ch); System.out.println( "Actual " + "character read: " + ( char )ch); } // Close the stream using read() pushbackReader.close(); System.out.println( "Stream Closed." ); } catch (Exception e) { System.out.println(e); } } } |
Integer value of character read: 71 Actual character read: G Integer value of character read: 101 Actual character read: e Integer value of character read: 101 Actual character read: e Integer value of character read: 107 Actual character read: k Integer value of character read: 115 Actual character read: s Stream Closed.
Program 2:
// Java program to demonstrate // PushbackReader read() method import java.io.*; import java.util.*; class GFG { public static void main(String[] args) { try { // Initializing a StringReader // and PushbackReader String s = "GFG" ; StringReader stringReader = new StringReader(s); PushbackReader pushbackReader = new PushbackReader(stringReader); // Get the character // to be read from the stream int ch; // Read the first 2 characters // to this reader using read() method // This will put the str in the stream // till it is read by the reader for ( int i = 0 ; i < 2 ; i++) { ch = pushbackReader.read(); System.out.println( "\nInteger value " + "of character read: " + ch); System.out.println( "Actual " + "character read: " + ( char )ch); } // Close the stream pushbackReader.close(); System.out.println( "Stream Closed." ); } catch (Exception e) { System.out.println(e); } } } |
Integer value of character read: 71 Actual character read: G Integer value of character read: 70 Actual character read: F Stream Closed.
Reference: https://docs.oracle.com/javase/9/docs/api/java/io/PushbackReader.html#read–