Android
java.io
public class

java.io.PushbackReader

java.lang.Object
java.io.Reader Closeable Readable
java.io.FilterReader
java.io.PushbackReader

PushbackReader is a filter class which allows chars read to be pushed back into the stream so that they can be reread. Parsers may find this useful. There is a progammable limit to the number of chars which may be pushed back. If the buffer of pushed back chars is empty, chars are read from the source reader.

Summary

Fields inherited from class java.io.FilterReader
Fields inherited from class java.io.Reader

Public Constructors

            PushbackReader(Reader in)
Constructs a new PushbackReader on the Reader in.
            PushbackReader(Reader in, int size)
Constructs a new PushbackReader on the Reader in.

Public Methods

          void  close()
Close this PushbackReader.
          void  mark(int readAheadLimit)
Mark this PushbackReader.
          boolean  markSupported()
Returns a boolean indicating whether or not this PushbackReader supports mark() and reset().
          int  read(char[] buffer, int offset, int count)
Reads at most count chars from this PushbackReader and stores them in char array buffer starting at offset.
          int  read()
Reads a single character from this PushbackReader and returns the result as an int.
          boolean  ready()
Returns a boolean indicating whether or not this PushbackReader is ready to be read without blocking.
          void  reset()
Resets this PushbackReader.
          long  skip(long count)
Skips count number of characters in this Reader.
          void  unread(char[] buffer)
Push back all the chars in buffer.
          void  unread(char[] buffer, int offset, int count)
Push back count number of chars in buffer starting at offset.
          void  unread(int oneChar)
Push back one char.
Methods inherited from class java.io.FilterReader
Methods inherited from class java.io.Reader
Methods inherited from class java.lang.Object
Methods inherited from interface java.io.Closeable
Methods inherited from interface java.lang.Readable

Details

Public Constructors

public PushbackReader(Reader in)

Constructs a new PushbackReader on the Reader in. The size of the pushback buffer is set to the default, or 1 character.

Parameters

in the Reader to allow pushback operations on.

public PushbackReader(Reader in, int size)

Constructs a new PushbackReader on the Reader in. The size of the pushback buffer is set to size characters.

Parameters

in the Reader to allow pushback operations on.
size the size of the pushback buffer (size>=0) in characters.

Throws

IllegalArgumentException if size <= 0

Public Methods

public void close()

Close this PushbackReader. This implementation closes this reader, releases the buffer used to pushback characters, and closes the target reader.

Throws

IOException If an error occurs attempting to close this Reader.

public void mark(int readAheadLimit)

Mark this PushbackReader. Since mark is not supported, this method will always throw IOException.

Parameters

readAheadLimit ignored, this method always throws IOException.

Throws

IOException Since mark is not supported byt PushbackReader.

public boolean markSupported()

Returns a boolean indicating whether or not this PushbackReader supports mark() and reset(). This implementation always returns false since PushbackReaders do not support mark/reset.

Returns

  • boolean indicates whether or not mark() and reset() are supported.

public int read(char[] buffer, int offset, int count)

Reads at most count chars from this PushbackReader and stores them in char array buffer starting at offset. Answer the number of chars actually read or -1 if no chars were read and end of stream was encountered. This implementation reads chars from the pushback buffer first, then the target stream if more chars are required to satisfy count.

Parameters

buffer the char array in which to store the read chars.
offset the offset in buffer to store the read chars.
count the maximum number of chars to store in buffer.

Returns

  • the number of chars actually read or -1 if end of stream.

Throws

IOException If an IOException occurs.

public int read()

Reads a single character from this PushbackReader and returns the result as an int. The 2 lowest-order bytes are returned or -1 of the end of stream was encountered. If the pushback buffer does not contain any available chars then a char from the target input reader is returned.

Returns

  • int The char read or -1 if end of stream.

Throws

IOException If an IOException occurs.

public boolean ready()

Returns a boolean indicating whether or not this PushbackReader is ready to be read without blocking. If the result is true, the next read() will not block. If the result is false this Reader may or may not block when read() is sent.

Returns

  • boolean true if the receiver will not block when read() is called, false if unknown or blocking will occur.

Throws

IOException If the Reader is already closed or some other IO error occurs.

public void reset()

Resets this PushbackReader. Since mark is not supported, always throw IOException.

Throws

IOException Since mark is not supported.

public long skip(long count)

Skips count number of characters in this Reader. Subsequent read()'s will not return these characters unless reset() is used.

Parameters

count the maximum number of characters to skip.

Returns

  • the number of characters actually skipped.

Throws

IOException If the Reader is already closed or some other IO error occurs.
IllegalArgumentException If count is negative.

public void unread(char[] buffer)

Push back all the chars in buffer. The chars are pushed so that they would be read back buffer[0], buffer[1], etc. If the push back buffer cannot handle the entire contents of buffer, an IOException will be thrown. Some of the buffer may already be in the buffer after the exception is thrown.

Parameters

buffer the char array containing chars to push back into the reader.

Throws

IOException If the pushback buffer becomes, or is, full.

public void unread(char[] buffer, int offset, int count)

Push back count number of chars in buffer starting at offset. The chars are pushed so that they would be read back buffer[offset], buffer[offset+1], etc. If the push back buffer cannot handle the chars copied from buffer, an IOException will be thrown. Some of the chars may already be in the buffer after the exception is thrown.

Parameters

buffer the char array containing chars to push back into the reader.
offset the location to start taking chars to push back.
count the number of chars to push back.

Throws

IOException If the pushback buffer becomes, or is, full.

public void unread(int oneChar)

Push back one char. Takes the char oneChar and puts in in the local buffer of chars to read back before accessing the target input stream.

Parameters

oneChar the char to push back into the stream.

Throws

IOException If the pushback buffer is already full.
Copyright 2007 Google Inc. Build 0.9_r1-98467 - 14 Aug 2008 18:56