Reader mark(int) method in Java with Examples
The mark() method of Reader Class in Java is used to mark the stream as the checkpoint from where the stream read will start, once reset() is called. This method is not supported by all subclasses of Reader class.
Syntax:
public void mark(int readAheadLimit)
Parameters: This method accepts a mandatory parameter readAheadLimit which is the limit on the number of characters that may be read while still preserving the mark. After reading this many characters, attempting to reset the stream may fail.
Return Value: This method do not returns any value.
Exception: This method throws IOException if some error occurs while input output or the mark() method is not supported.
Below methods illustrates the working of mark() method:
Program 1:
import java.io.*;
import java.util.*;
class GFG {
public static void main(String[] args)
{
try {
String str = "GeeksForGeeks" ;
Reader reader
= new StringReader(str);
int ch;
for ( int i = 0 ; i < 10 ; i++) {
ch = reader.read();
System.out.print(( char )ch);
}
System.out.println();
reader.mark( 5 );
reader.reset();
for ( int i = 0 ; i < 5 ; i++) {
ch = reader.read();
System.out.print(( char )ch);
}
}
catch (Exception e) {
System.out.println(e);
}
}
}
|
Program 2:
import java.io.*;
import java.util.*;
class GFG {
public static void main(String[] args)
{
try {
String str = "GeeksForGeeks" ;
Reader reader
= new StringReader(str);
int ch;
for ( int i = 0 ; i < 10 ; i++) {
ch = reader.read();
System.out.print(( char )ch);
}
System.out.println();
reader.mark( 10 );
reader.reset();
for ( int i = 0 ; i < 1 ; i++) {
ch = reader.read();
System.out.print(( char )ch);
}
}
catch (Exception e) {
System.out.println(e);
}
}
}
|
Reference: https://docs.oracle.com/javase/9/docs/api/java/io/Reader.html#mark-int-
Last Updated :
13 Feb, 2019
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...