The reset() method of PushbackInputStream class in Java is used to reset the steam to the position where mark() method was called. This method does nothing for PushbackInputStream. Syntax:
public void reset() throws IOException
Overrides: This method overrides the reset() method of FilterInputStream class. Parameters: This method does not accept any parameter. Return value: This method does not return any value. Exceptions: This method throws IOException whenever this method is called. Below programs illustrate reset() method of PushbackInputStream class in IO package: Program 1:
// Java program to illustrate // PushbackInputStream reset() method import java.io.*;
public class GFG {
public static void main(String[] args)
throws IOException
{
// Create an array
byte [] byteArray
= new byte [] { 'G' , 'E' , 'E' ,
'K' , 'S' };
// Create inputStream
InputStream inputStr
= new ByteArrayInputStream(byteArray);
// Create object of
// PushbackInputStream
PushbackInputStream pushbackInputStr
= new PushbackInputStream(inputStr);
for ( int i = 0 ; i < byteArray.length; i++) {
// Read the character
System.out.print(
( char )pushbackInputStr.read());
}
// Revoke reset() but it does nothing
pushbackInputStr.reset();
}
} |
Exception in thread “main” java.io.IOException: mark/reset not supported GEEKS
Program 2:
// Java program to illustrate // PushbackInputStream reset() method import java.io.*;
public class GFG {
public static void main(String[] args)
throws IOException
{
// Create an array
byte [] byteArray
= new byte [] { 'H' , 'E' , 'L' ,
'L' , 'O' };
// Create inputStream
InputStream inputStr
= new ByteArrayInputStream(byteArray);
// Create object of
// PushbackInputStream
PushbackInputStream pushbackInputStr
= new PushbackInputStream(inputStr);
// Revoke reset()
pushbackInputStr.reset();
for ( int i = 0 ; i < byteArray.length; i++) {
// Read the character
System.out.print(
( char )pushbackInputStr.read());
}
}
} |
Exception in thread “main” java.io.IOException: mark/reset not supported
References: https://docs.oracle.com/javase/10/docs/api/java/io/PushbackInputStream.html#reset()