Package com.tangosol.io
Class Utf8Writer
java.lang.Object
java.io.Writer
com.tangosol.io.Utf8Writer
- All Implemented Interfaces:
Closeable
,Flushable
,Appendable
,AutoCloseable
A Utf8Writer is used to write character data onto an underlying stream.
- Author:
- cp 2002.01.04
-
Field Summary
-
Constructor Summary
ConstructorDescriptionConstruct a Utf8Writer that buffers the output.Utf8Writer
(OutputStream stream) Construct a Utf8Writer that puts the output into an OutputStream. -
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
Close the stream, flushing it first.void
flush()
Flush the stream.byte[]
If the underlying stream is a ByteArrayOutputStream (such as with the no-parameter constructor), this will return the binary UTF8-encoded data that resulted from the character data written to this Writer.void
write
(char[] ach) Write an array of characters.void
write
(char[] ach, int of, int cch) Write a portion of an array of characters.void
write
(int ch) Write a single character.void
Write a string.void
Write a portion of a string.Methods inherited from class java.io.Writer
append, append, append, nullWriter
-
Constructor Details
-
Utf8Writer
public Utf8Writer()Construct a Utf8Writer that buffers the output. -
Utf8Writer
Construct a Utf8Writer that puts the output into an OutputStream.- Parameters:
stream
- the underlying stream to write to
-
-
Method Details
-
write
Write a single character. The character to be written is contained in the 16 low-order bits of the given integer value; the 16 high-order bits are ignored.Subclasses that intend to support efficient single-character output should override this method.
- Overrides:
write
in classWriter
- Parameters:
ch
- int specifying a character to be written.- Throws:
IOException
-
write
Write an array of characters.- Overrides:
write
in classWriter
- Parameters:
ach
- array of characters to write- Throws:
IOException
-
write
Write a portion of an array of characters.- Specified by:
write
in classWriter
- Parameters:
ach
- array of characters to write fromof
- offset from which to start writing characterscch
- number of characters to write- Throws:
IOException
-
write
Write a string.- Overrides:
write
in classWriter
- Parameters:
s
- the String to write- Throws:
IOException
-
write
Write a portion of a string.- Overrides:
write
in classWriter
- Parameters:
s
- the String to write fromof
- offset from which to start writing characterscch
- number of characters to write- Throws:
IOException
-
flush
Flush the stream. If the stream has saved any characters from the various write() methods in a buffer, write them immediately to their intended destination. Then, if that destination is another character or byte stream, flush it. Thus one flush() invocation will flush all the buffers in a chain of Writers and OutputStreams.- Specified by:
flush
in interfaceFlushable
- Specified by:
flush
in classWriter
- Throws:
IOException
- If an I/O error occurs
-
close
Close the stream, flushing it first. Once a stream has been closed, further write() or flush() invocations will cause an IOException to be thrown. Closing a previously-closed stream, however, has no effect.- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Specified by:
close
in classWriter
- Throws:
IOException
- If an I/O error occurs
-
toByteArray
public byte[] toByteArray()If the underlying stream is a ByteArrayOutputStream (such as with the no-parameter constructor), this will return the binary UTF8-encoded data that resulted from the character data written to this Writer.- Returns:
- a byte array of the UTF8 data
- Throws:
ClassCastException
- if the underlying stream is not ByteArrayOutputStream
-