Package com.ctc.wstx.io
Class AsciiReader
- java.lang.Object
-
- java.io.Reader
-
- com.ctc.wstx.io.BaseReader
-
- com.ctc.wstx.io.AsciiReader
-
- All Implemented Interfaces:
java.io.Closeable
,java.lang.AutoCloseable
,java.lang.Readable
public final class AsciiReader extends BaseReader
Optimized Reader that reads ascii content from an input stream. In addition to doing (hopefully) optimal conversion, it can also take array of "pre-read" (leftover) bytes; this is necessary when preliminary stream/reader is trying to figure out XML encoding.
-
-
Field Summary
Fields Modifier and Type Field Description (package private) int
mCharCount
Total read character count; used for error reporting purposes (note: byte count is the same, due to fixed one-byte-per char mapping)(package private) boolean
mXml11
-
Fields inherited from class com.ctc.wstx.io.BaseReader
CHAR_DEL, CONVERT_LSEP_TO, CONVERT_NEL_TO, mByteBuffer, mByteBufferEnd, mBytePtr, mConfig, mTmpBuf, NULL_BYTE, NULL_CHAR
-
-
Constructor Summary
Constructors Constructor Description AsciiReader(ReaderConfig cfg, java.io.InputStream in, byte[] buf, int ptr, int len, boolean recycleBuffer)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
read(char[] cbuf, int start, int len)
private void
reportInvalidAscii(char c)
void
setXmlCompliancy(int xmlVersion)
Method that can be called to indicate the xml conformance used when reading content using this reader.-
Methods inherited from class com.ctc.wstx.io.BaseReader
canModifyBuffer, close, freeBuffers, getStream, read, readBytes, readBytesAt, reportBounds, reportInvalidXml11, reportStrangeStream
-
-
-
-
Constructor Detail
-
AsciiReader
public AsciiReader(ReaderConfig cfg, java.io.InputStream in, byte[] buf, int ptr, int len, boolean recycleBuffer)
-
-
Method Detail
-
setXmlCompliancy
public void setXmlCompliancy(int xmlVersion)
Description copied from class:BaseReader
Method that can be called to indicate the xml conformance used when reading content using this reader. Some of the character validity checks need to be done at reader level, and sometimes they depend on xml level (for example, xml 1.1 has new linefeeds and both more and less restricted characters).- Specified by:
setXmlCompliancy
in classBaseReader
-
read
public int read(char[] cbuf, int start, int len) throws java.io.IOException
- Specified by:
read
in classjava.io.Reader
- Throws:
java.io.IOException
-
reportInvalidAscii
private void reportInvalidAscii(char c) throws java.io.IOException
- Throws:
java.io.IOException
-
-