Class UTF8Writer
java.lang.Object
java.io.Writer
com.fasterxml.jackson.dataformat.csv.impl.UTF8Writer
- All Implemented Interfaces:
Closeable
,Flushable
,Appendable
,AutoCloseable
Efficient UTF-8 backed writer.
Note: original implementation based on writer from Jackson core package; modified slightly, copied to reduce dependency to impl details.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final com.fasterxml.jackson.core.io.IOContext
private OutputStream
private byte[]
private final int
private int
private int
When outputting chars from BMP, surrogate pairs need to be coalesced.private static final int
private static final int
private static final int
private static final int
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionappend
(char c) void
close()
private int
convertSurrogate
(int secondPart) Method called to calculate UTF code point, from a surrogate pair.void
flush()
private void
throwIllegal
(int code) void
write
(char[] cbuf) void
write
(char[] cbuf, int off, int len) void
write
(int c) void
void
Methods inherited from class java.io.Writer
append, append, nullWriter
-
Field Details
-
SURR1_FIRST
private static final int SURR1_FIRST- See Also:
-
SURR1_LAST
private static final int SURR1_LAST- See Also:
-
SURR2_FIRST
private static final int SURR2_FIRST- See Also:
-
SURR2_LAST
private static final int SURR2_LAST- See Also:
-
_context
private final com.fasterxml.jackson.core.io.IOContext _context -
_out
-
_outBuffer
private byte[] _outBuffer -
_outBufferEnd
private final int _outBufferEnd -
_outPtr
private int _outPtr -
_surrogate
private int _surrogateWhen 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
-
-
Constructor Details
-
UTF8Writer
-
-
Method Details
-
append
- Specified by:
append
in interfaceAppendable
- Overrides:
append
in classWriter
- Throws:
IOException
-
close
- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Specified by:
close
in classWriter
- Throws:
IOException
-
flush
- Specified by:
flush
in interfaceFlushable
- Specified by:
flush
in classWriter
- Throws:
IOException
-
write
- Overrides:
write
in classWriter
- Throws:
IOException
-
write
- Specified by:
write
in classWriter
- Throws:
IOException
-
write
- Overrides:
write
in classWriter
- Throws:
IOException
-
write
- Overrides:
write
in classWriter
- Throws:
IOException
-
write
- Overrides:
write
in classWriter
- Throws:
IOException
-
convertSurrogate
Method called to calculate UTF code point, from a surrogate pair.- Throws:
IOException
-
throwIllegal
- Throws:
IOException
-