Package org.elasticsearch.common.io
Class UTF8StreamWriter
java.lang.Object
java.io.Writer
org.elasticsearch.common.io.UTF8StreamWriter
- All Implemented Interfaces:
Closeable
,Flushable
,Appendable
,AutoCloseable
-
Field Summary
-
Constructor Summary
ConstructorDescriptionCreates a UTF-8 writer having a byte buffer of moderate capacity (2048).UTF8StreamWriter(int capacity)
Creates a UTF-8 writer having a byte buffer of specified capacity. -
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
Closes andresets
this writer for reuse.void
flush()
Flushes the stream.void
reset()
setOutput(OutputStream out)
Sets the output stream to use for writing until this writer is closed.void
write(char c)
Writes a single character.void
write(char[] cbuf, int off, int len)
Writes a portion of an array of characters.void
write(int code)
Writes a character given its 31-bits Unicode.void
write(CharSequence csq)
Writes the specified character sequence.void
Writes a portion of a string.
-
Constructor Details
-
UTF8StreamWriter
public UTF8StreamWriter()Creates a UTF-8 writer having a byte buffer of moderate capacity (2048). -
UTF8StreamWriter
public UTF8StreamWriter(int capacity)Creates a UTF-8 writer having a byte buffer of specified capacity.- Parameters:
capacity
- the capacity of the byte buffer.
-
-
Method Details
-
setOutput
Sets the output stream to use for writing until this writer is closed. For example:[code] Writer writer = new UTF8StreamWriter().setOutputStream(out); [/code] is equivalent but writes faster than [code] Writer writer = new java.io.OutputStreamWriter(out, "UTF-8"); [/code]- Parameters:
out
- the output stream.- Returns:
- this UTF-8 writer.
- Throws:
IllegalStateException
- if this writer is being reused and it has not beenclosed
orreset
.
-
write
Writes a single character. This method supports 16-bits character surrogates.- Parameters:
c
-char
the character to be written (possibly a surrogate).- Throws:
IOException
- if an I/O error occurs.
-
write
Writes a character given its 31-bits Unicode.- Overrides:
write
in classWriter
- Parameters:
code
- the 31 bits Unicode of the character to be written.- Throws:
IOException
- if an I/O error occurs.
-
write
Writes a portion of an array of characters.- Specified by:
write
in classWriter
- Parameters:
cbuf
- the array of characters.off
- the offset from which to start writing characters.len
- the number of characters to write.- Throws:
IOException
- if an I/O error occurs.
-
write
Writes a portion of a string.- Overrides:
write
in classWriter
- Parameters:
str
- a String.off
- the offset from which to start writing characters.len
- the number of characters to write.- Throws:
IOException
- if an I/O error occurs
-
write
Writes the specified character sequence.- Parameters:
csq
- the character sequence.- Throws:
IOException
- if an I/O error occurs
-
flush
Flushes 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
Closes andresets
this writer for reuse.- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Specified by:
close
in classWriter
- Throws:
IOException
- if an I/O error occurs
-
reset
public void reset()
-