
- Java.io - Home
- Java.io - BufferedInputStream
- Java.io - BufferedOutputStream
- Java.io - BufferedReader
- Java.io - BufferedWriter
- Java.io - ByteArrayInputStream
- Java.io - ByteArrayOutputStream
- Java.io - CharArrayReader
- Java.io - CharArrayWriter
- Java.io - Console
- Java.io - DataInputStream
- Java.io - DataOutputStream
- Java.io - File
- Java.io - FileDescriptor
- Java.io - FileInputStream
- Java.io - FileOutputStream
- Java.io - FilePermission
- Java.io - FileReader
- Java.io - FileWriter
- Java.io - FilterInputStream
- Java.io - FilterOutputStream
- Java.io - FilterReader
- Java.io - FilterWriter
- Java.io - InputStream
- Java.io - InputStreamReader
- Java.io - LineNumberInputStream
- Java.io - LineNumberReader
- Java.io - ObjectInputStream
- Java.io - ObjectInputStream.GetField
- Java.io - ObjectOutputStream
- io - ObjectOutputStream.PutField
- Java.io - ObjectStreamClass
- Java.io - ObjectStreamField
- Java.io - OutputStream
- Java.io - OutputStreamWriter
- Java.io - PipedInputStream
- Java.io - PipedOutputStream
- Java.io - PipedReader
- Java.io - PipedWriter
- Java.io - PrintStream
- Java.io - PrintWriter
- Java.io - PushbackInputStream
- Java.io - PushbackReader
- Java.io - RandomAccessFile
- Java.io - Reader
- Java.io - SequenceInputStream
- Java.io - SerializablePermission
- Java.io - StreamTokenizer
- Java.io - StringBufferInputStream
- Java.io - StringReader
- Java.io - StringWriter
- Java.io - Writer
- Java.io package Useful Resources
- Java.io - Discussion
Java - StringReader ready() method
Description
The Java StringReader ready() method tells whether this stream is ready to be read.
Declaration
Following is the declaration for java.io.StringReader.ready() method.
public boolean ready()
Parameters
NA
Return Value
This method returns true if the next read() is guaranteed not to block for input.
Exception
IOException − If an I/O error occurs.
Example - Usage of StringReader ready() method
The following example shows the usage of StringReader ready() method.
StringReaderDemo.java
package com.tutorialspoint; import java.io.IOException; import java.io.StringReader; public class StringReaderDemo { public static void main(String[] args) { String s = "Hello World"; // create a new StringReader StringReader sr = new StringReader(s); try { // check if reader is ready System.out.println("" + sr.ready()); // read the first five chars for (int i = 0; i < 5; i++) { char c = (char) sr.read(); System.out.print("" + c); } // close the stream sr.close(); } catch (IOException ex) { ex.printStackTrace(); } } }
Output
Let us compile and run the above program, this will produce the following result −
true Hello
Example - Basic check before reading
The following example shows the usage of StringReader ready() method.
StringReaderDemo.java
package com.tutorialspoint; import java.io.StringReader; public class StringReaderDemo { public static void main(String[] args) throws Exception { StringReader reader = new StringReader("Hello, Java!"); if (reader.ready()) { System.out.println("Reader is ready to read."); int ch = reader.read(); System.out.println("First character: " + (char) ch); } else { System.out.println("Reader is not ready."); } reader.close(); } }
Output
Let us compile and run the above program, this will produce the following result−
Reader is ready to read. First character: H
Explanation
ready() returns true because StringReader is always ready unless closed.
Then ads the first character 'H'.
Example - Check after closing the reader
The following example shows the usage of StringReader ready() method.
StringReaderDemo.java
package com.tutorialspoint; import java.io.StringReader; public class StringReaderDemo { public static void main(String[] args) { StringReader reader = new StringReader("Test string"); try { reader.close(); if (reader.ready()) { System.out.println("Reader is ready."); } else { System.out.println("Reader is not ready."); } } catch (Exception e) { System.out.println("Exception: " + e.getMessage()); } } }
Output
Let us compile and run the above program, this will produce the following result−
Exception: Stream closed
Explanation
After calling reader.close(), calling ready() throws an IOException.
This demonstrates the correct behavior: once closed, the reader is no longer usable.