The ready() method of Reader Class in Java is used to check whether this Reader is ready to be read or not. It returns a boolean which states if the reader is ready.
Syntax:
public void ready()
Parameters: This method does not accepts any parameters
Return Value: This method returns a boolean value which tells if this Reader is ready to be read or not. It return true if it is ready. Else it returns false.
Exception: This method throws IOException if some error occurs while input-output.
Below methods illustrates the working of ready() method:
Program 1:
// Java program to demonstrate // Reader ready() method   import java.io.*; import java.util.*;   class GFG {     public static void main(String[] args)     {           try {               String str = "GeeksForGeeks" ;               // Create a Reader instance             Reader reader                 = new StringReader(str);               // Check if the Reader is             // ready to be read using ready()             System.out.println( "Is Reader ready "                                + "to be read: "                                + reader.ready());               // 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 = reader.read();                 System.out.println( "\nInteger value "                                    + "of character read: "                                    + ch);                 System.out.println( "Actual "                                    + "character read: "                                    + ( char )ch);             }               reader.close();         }         catch (Exception e) {             System.out.println(e);         }     } } |
Is Reader ready to be read: true 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
Program 2:
// Java program to demonstrate // Reader ready() method   import java.io.*; import java.util.*;   class GFG {     public static void main(String[] args)     {           try {             String str = "GeeksForGeeks" ;               // Create a Reader instance             Reader reader                 = new StringReader(str);               reader.close();               // Check if the Reader is             // ready to be read using ready()             System.out.println( "Is Reader ready "                                + "to be read: "                                + reader.ready());               // Get the character             // to be read from the stream             int ch;               // Read the first character             // to this reader using read() method             // This will put the str in the stream             // till it is read by the reader             ch = reader.read();             System.out.println( "\nInteger value "                                + "of character read: "                                + ch);             System.out.println( "Actual "                                + "character read: "                                + ( char )ch);               reader.close();         }         catch (Exception e) {             System.out.println(e);         }     } } |
java.io.IOException: Stream closed
Reference: https://docs.oracle.com/javase/9/docs/api/java/io/Reader.html#ready–