Open In App

PushbackReader mark(int) method in Java with Examples

Last Updated : 29 Apr, 2019
Improve
Improve
Like Article
Like
Save
Share
Report

The mark() method of PushbackReader Class in Java is used to marks the current position of the PushbackReader. In the case of PushbackReader, this method always throws an exception as this method isn’t supported by the PushbackReader.

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 always as the mark() method is not supported.

Below methods illustrates the working of mark() method:

Program 1:




// Java program to demonstrate
// PushbackReader mark(int) 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);
  
            // mark the stream for
            // 5 characters using mark()
            pushbackReader.mark(5);
  
            // Close the stream using mark(int)
            pushbackReader.close();
            System.out.println("Stream Closed.");
        }
        catch (Exception e) {
            System.out.println(e);
        }
    }
}


Output:

java.io.IOException: mark/reset not supported

Program 2:




// Java program to demonstrate
// PushbackReader mark(int) 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);
  
            // mark the stream for
            // 1 characters using mark()
            pushbackReader.mark(1);
  
            // Close the stream
            pushbackReader.close();
            System.out.println("Stream Closed.");
        }
        catch (Exception e) {
            System.out.println(e);
        }
    }
}


Output:

java.io.IOException: mark/reset not supported

Reference: https://docs.oracle.com/javase/9/docs/api/java/io/PushbackReader.html#mark-int-



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads