class provides a pushback buffer so a
program can “unread” the last several bytes read. The
next time data is read from the stream, the unread bytes are reread.
public void unread(int b) throws IOException public void unread(byte data, int offset, int length) throws IOException public void unread(byte data) throws IOException
By default the buffer is only one byte long, and trying to unread
more than one byte throws an
you can change the default buffer size with the second constructor:
public PushbackInputStream(InputStream in) public PushbackInputStream(InputStream in, int size)
BufferedInputStream use buffers, only a
PushbackInputStream allows unreading, and only a
BufferedInputStream allows marking and resetting.
markSupported() returns false.
public boolean markSupported()
methods work exactly as with normal input streams. However, they
first attempt to read from the pushback buffer.
public int read() throws IOException public int read(byte data, int offset, int length) throws IOException public int available() throws IOException