|
Build 1.0_r1(from source) | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectjava.io.Reader
java.io.FilterReader
java.io.PushbackReader
public class 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.
| Field Summary | |
|---|---|
(package private) char[] |
buf
The char array containing the chars to read. |
(package private) int |
pos
The current position within the char array buf. |
| Fields inherited from class java.io.FilterReader |
|---|
in |
| Fields inherited from class java.io.Reader |
|---|
lock |
| Constructor Summary | |
|---|---|
PushbackReader(Reader in)
Constructs a new PushbackReader on the Reader in. |
|
PushbackReader(Reader in,
int size)
Constructs a new PushbackReader on the Reader in. |
|
| Method Summary | |
|---|---|
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()
Reads a single character from this PushbackReader and returns the result as an int. |
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. |
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.Reader |
|---|
read, read |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
char[] buf
char array containing the chars to read.
int pos
buf. A value
equal to buf.length indicates no chars available. A value of 0 indicates
the buffer is full.
| Constructor Detail |
|---|
public PushbackReader(Reader in)
in. The
size of the pushback buffer is set to the default, or 1 character.
in - the Reader to allow pushback operations on.
public PushbackReader(Reader in,
int size)
in. The
size of the pushback buffer is set to size characters.
in - the Reader to allow pushback operations on.size - the size of the pushback buffer (size>=0) in
characters.
IllegalArgumentException - if size <= 0| Method Detail |
|---|
public void close()
throws IOException
close in interface Closeableclose in class FilterReaderIOException - If an error occurs attempting to close this Reader.
public void mark(int readAheadLimit)
throws IOException
mark in class FilterReaderreadAheadLimit - ignored, this method always throws IOException.
IOException - Since mark is not supported byt PushbackReader.public boolean markSupported()
markSupported in class FilterReader
public int read()
throws IOException
read in class FilterReaderIOException - If an IOException occurs.
public int read(char[] buffer,
int offset,
int count)
throws IOException
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.
read in class FilterReaderbuffer - 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.
IOException - If an IOException occurs.
public boolean ready()
throws IOException
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.
ready in class FilterReadertrue if the receiver will not block when
read() is called, false if unknown
or blocking will occur.
IOException - If the Reader is already closed or some other IO error
occurs.
public void reset()
throws IOException
reset in class FilterReaderIOException - Since mark is not supported.
public void unread(char[] buffer)
throws IOException
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.
buffer - the char array containing chars to push back into the reader.
IOException - If the pushback buffer becomes, or is, full.
public void unread(char[] buffer,
int offset,
int count)
throws IOException
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.
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.
IOException - If the pushback buffer becomes, or is, full.
public void unread(int oneChar)
throws IOException
char. Takes the char oneChar
and puts in in the local buffer of chars to read back before accessing
the target input stream.
oneChar - the char to push back into the stream.
IOException - If the pushback buffer is already full.
public long skip(long count)
throws IOException
count number of characters in this Reader.
Subsequent read()'s will not return these characters
unless reset() is used.
skip in class FilterReadercount - the maximum number of characters to skip.
IOException - If the Reader is already closed or some other IO error
occurs.
IllegalArgumentException - If count is negative.
|
Build 1.0_r1(from source) | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||