public class UTF8Reader
extends java.io.Reader
Modifier and Type | Field and Description |
---|---|
static int |
DEFAULT_BUFFER_SIZE
Default byte buffer size (2048).
|
protected byte[] |
fBuffer
Byte buffer.
|
protected java.io.InputStream |
fInputStream
Input stream.
|
protected int |
fOffset
Offset into buffer.
|
Constructor and Description |
---|
UTF8Reader(java.io.InputStream inputStream,
int size)
Constructs a UTF-8 reader from the specified input stream,
buffer size and MessageFormatter.
|
Modifier and Type | Method and Description |
---|---|
void |
close()
Close the stream.
|
void |
mark(int readAheadLimit)
Mark the present position in the stream.
|
boolean |
markSupported()
Tell whether this stream supports the mark() operation.
|
int |
read()
Read a single character.
|
int |
read(char[] ch,
int offset,
int length)
Read characters into a portion of an array.
|
boolean |
ready()
Tell whether this stream is ready to be read.
|
void |
reset()
Reset the stream.
|
long |
skip(long n)
Skip characters.
|
public static final int DEFAULT_BUFFER_SIZE
protected java.io.InputStream fInputStream
protected byte[] fBuffer
protected int fOffset
public UTF8Reader(java.io.InputStream inputStream, int size)
inputStream
- The input stream.size
- The initial buffer size.public int read() throws java.io.IOException
Subclasses that intend to support efficient single-character input should override this method.
read
in class java.io.Reader
java.io.IOException
- If an I/O error occurspublic int read(char[] ch, int offset, int length) throws java.io.IOException
read
in class java.io.Reader
ch
- Destination bufferoffset
- Offset at which to start storing characterslength
- Maximum number of characters to readjava.io.IOException
- If an I/O error occurspublic long skip(long n) throws java.io.IOException
skip
in class java.io.Reader
n
- The number of characters to skipjava.io.IOException
- If an I/O error occurspublic boolean ready() throws java.io.IOException
ready
in class java.io.Reader
java.io.IOException
- If an I/O error occurspublic boolean markSupported()
markSupported
in class java.io.Reader
public void mark(int readAheadLimit) throws java.io.IOException
mark
in class java.io.Reader
readAheadLimit
- 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.java.io.IOException
- If the stream does not support mark(),
or if some other I/O error occurspublic void reset() throws java.io.IOException
reset
in class java.io.Reader
java.io.IOException
- If the stream has not been marked,
or if the mark has been invalidated,
or if the stream does not support reset(),
or if some other I/O error occurspublic void close() throws java.io.IOException
close
in interface java.io.Closeable
close
in interface java.lang.AutoCloseable
close
in class java.io.Reader
java.io.IOException
- If an I/O error occurs