com.fasterxml.aalto.in
Class Utf32Reader
java.lang.Object
java.io.Reader
com.fasterxml.aalto.in.Utf32Reader
- All Implemented Interfaces:
- java.io.Closeable, java.lang.Readable
public final class Utf32Reader
- extends java.io.Reader
Since JDK does not come with UTF-32/UCS-4, let's implement a simple
decoder to use.
|
Field Summary |
protected byte[] |
mBuffer
|
protected java.io.InputStream |
mIn
|
protected int |
mLength
|
protected int |
mPtr
|
| Fields inherited from class java.io.Reader |
lock |
|
Constructor Summary |
Utf32Reader(ReaderConfig cfg,
java.io.InputStream in,
byte[] buf,
int ptr,
int len,
boolean isBigEndian)
|
|
Method Summary |
void |
close()
|
void |
freeBuffers()
|
int |
read()
Although this method is implemented by the base class, AND it should
never be called by Woodstox code, let's still implement it bit more
efficiently just in case |
int |
read(char[] cbuf,
int start,
int len)
|
protected void |
reportBounds(char[] cbuf,
int start,
int len)
|
protected void |
reportStrangeStream()
|
| Methods inherited from class java.io.Reader |
mark, markSupported, read, read, ready, reset, skip |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
mIn
protected java.io.InputStream mIn
mBuffer
protected byte[] mBuffer
mPtr
protected int mPtr
mLength
protected int mLength
Utf32Reader
public Utf32Reader(ReaderConfig cfg,
java.io.InputStream in,
byte[] buf,
int ptr,
int len,
boolean isBigEndian)
close
public void close()
throws java.io.IOException
- Specified by:
close in interface java.io.Closeable- Specified by:
close in class java.io.Reader
- Throws:
java.io.IOException
read
public int read()
throws java.io.IOException
- Although this method is implemented by the base class, AND it should
never be called by Woodstox code, let's still implement it bit more
efficiently just in case
- Overrides:
read in class java.io.Reader
- Throws:
java.io.IOException
read
public int read(char[] cbuf,
int start,
int len)
throws java.io.IOException
- Specified by:
read in class java.io.Reader
- Throws:
java.io.IOException
freeBuffers
public final void freeBuffers()
reportBounds
protected void reportBounds(char[] cbuf,
int start,
int len)
throws java.io.IOException
- Throws:
java.io.IOException
reportStrangeStream
protected void reportStrangeStream()
throws java.io.IOException
- Throws:
java.io.IOException