net.sf.saxon.serialize
Class UTF8Writer
java.lang.Object
java.io.Writer
net.sf.saxon.serialize.UTF8Writer
- All Implemented Interfaces:
- java.io.Closeable, java.io.Flushable, java.lang.Appendable
public final class UTF8Writer
- extends java.io.Writer
Specialized buffering UTF-8 writer.
The main reason for custom version is to allow for efficient
buffer recycling; the second benefit is that encoder has less
overhead for short content encoding (compared to JDK default
codecs).
- Author:
- Tatu Saloranta
Fields inherited from class java.io.Writer |
lock |
Constructor Summary |
UTF8Writer(java.io.OutputStream out)
|
UTF8Writer(java.io.OutputStream out,
int bufferLength)
|
Method Summary |
void |
close()
|
void |
flush()
|
void |
write(char[] cbuf)
|
void |
write(char[] cbuf,
int off,
int len)
|
void |
write(int c)
|
void |
write(java.lang.String str)
|
void |
write(java.lang.String str,
int off,
int len)
|
Methods inherited from class java.io.Writer |
append, append, append |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
SURR1_FIRST
static final int SURR1_FIRST
- See Also:
- Constant Field Values
SURR1_LAST
static final int SURR1_LAST
- See Also:
- Constant Field Values
SURR2_FIRST
static final int SURR2_FIRST
- See Also:
- Constant Field Values
SURR2_LAST
static final int SURR2_LAST
- See Also:
- Constant Field Values
_out
protected java.io.OutputStream _out
_outBuffer
protected byte[] _outBuffer
_outBufferLast
protected final int _outBufferLast
_outPtr
protected int _outPtr
_surrogate
int _surrogate
- When outputting chars from BMP, surrogate pairs need to be coalesced.
To do this, both pairs must be known first; and since it is possible
pairs may be split, we need temporary storage for the first half
UTF8Writer
public UTF8Writer(java.io.OutputStream out)
UTF8Writer
public UTF8Writer(java.io.OutputStream out,
int bufferLength)
close
public void close()
throws java.io.IOException
- Specified by:
close
in interface java.io.Closeable
- Specified by:
close
in class java.io.Writer
- Throws:
java.io.IOException
flush
public void flush()
throws java.io.IOException
- Specified by:
flush
in interface java.io.Flushable
- Specified by:
flush
in class java.io.Writer
- Throws:
java.io.IOException
write
public void write(char[] cbuf)
throws java.io.IOException
- Overrides:
write
in class java.io.Writer
- Throws:
java.io.IOException
write
public void write(char[] cbuf,
int off,
int len)
throws java.io.IOException
- Specified by:
write
in class java.io.Writer
- Throws:
java.io.IOException
write
public void write(int c)
throws java.io.IOException
- Overrides:
write
in class java.io.Writer
- Throws:
java.io.IOException
write
public void write(java.lang.String str)
throws java.io.IOException
- Overrides:
write
in class java.io.Writer
- Throws:
java.io.IOException
write
public void write(java.lang.String str,
int off,
int len)
throws java.io.IOException
- Overrides:
write
in class java.io.Writer
- Throws:
java.io.IOException