Java.io.Reader.reset() Method
Description
The java.io.Reader.reset() method resets the stream. If the stream has been marked, then attempt to reposition it at the mark. If the stream has not been marked, then attempt to reset it in some way appropriate to the particular stream, for example by repositioning it to its starting point.
Declaration
Following is the declaration for java.io.Reader.reset() method
public void reset()
Parameters
NA
Return Value
This method does not return a value.
Exception
IOException -- If the stream has not been marked, or if the mark has been invalidated, or if the stream does not support reset(), or if some other I/O error occurs
Example
The following example shows the usage of java.io.Reader.reset() method.
package com.tutorialspoint;
import java.io.*;
public class ReaderDemo {
public static void main(String[] args) {
String s = "Hello World";
// create a new StringReader
Reader reader = new StringReader(s);
try {
// read the first five chars
for (int i = 0; i < 5; i++) {
char c = (char) reader.read();
System.out.print("" + c);
}
// mark current position for maximum of 10 characters
reader.mark(10);
// read five more chars
for (int i = 0; i < 6; i++) {
char c = (char) reader.read();
System.out.print("" + c);
}
// reset back to the marked position
reader.reset();
// change line
System.out.println();
// read six more chars
for (int i = 0; i < 6; i++) {
char c = (char) reader.read();
System.out.print("" + c);
}
// close the stream
reader.close();
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
Let us compile and run the above program, this will produce the following result:
Hello World World