Top Description Fields Constructors Methods
com.sun.xml.internal.stream.writers

public final Class UTF8OutputStreamWriter

extends Writer
Class Inheritance
Imports
java.io.Writer, .OutputStream, .IOException, com.sun.org.apache.xerces.internal.util.XMLChar

This class is used to write a stream of chars as a stream of bytes using the UTF8 encoding. It assumes that the underlying output stream is buffered or does not need additional buffering.

It is more efficient than using a java.io.OutputStreamWriter because it does not need to be wrapped in a java.io.BufferedWriter. Creating multiple instances of java.io.BufferedWriter has been shown to be very expensive in JAX-WS.

Author
Santiago PericasGeertsen

Field Summary

Modifier and TypeField and Description
pack-priv int
lastUTF16CodePoint

Java represents chars that are not in the Basic Multilingual Plane (BMP) in UTF-16.

pack-priv OutputStream
out

Undelying output stream.

Inherited from java.io.Writer:
lock

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public void
close()

Implements abstract java.io.Writer.close.

Implements java.io.Closeable.close.

Closes the stream, flushing it first.

public void
flush()

Implements abstract java.io.Writer.flush.

Implements java.io.Flushable.flush.

Flushes the stream.

public String
public void
write(int
int specifying a character to be written
c
)

Overrides java.io.Writer.write.

Writes a single character.

public void
write(char[]
Array of characters to be written
cbuf
)

Overrides java.io.Writer.write.

Writes an array of characters.

public void
write(char[]
Array of characters
cbuf
,
int
Offset from which to start writing characters
off
,
int
Number of characters to write
len
)

Implements abstract java.io.Writer.write.

Writes a portion of an array of characters.

public void
write(String
String to be written
str
)

Overrides java.io.Writer.write.

Writes a string.

public void
write(String
A String
str
,
int
Offset from which to start writing characters
off
,
int
Number of characters to write
len
)

Overrides java.io.Writer.write.

Writes a portion of a string.

Inherited from java.io.Writer:
appendappendappendnullWriter

Field Detail

lastUTF16CodePointback to summary
pack-priv int lastUTF16CodePoint

Java represents chars that are not in the Basic Multilingual Plane (BMP) in UTF-16. This int stores the first code unit for a code point encoded in two UTF-16 code units.

outback to summary
pack-priv OutputStream out

Undelying output stream. This class assumes that this output stream does not need buffering.

Constructor Detail

UTF8OutputStreamWriterback to summary
public UTF8OutputStreamWriter(OutputStream out)

Method Detail

closeback to summary
public void close() throws IOException

Implements abstract java.io.Writer.close.

Implements java.io.Closeable.close.

Doc from java.io.Writer.close.

Closes the stream, flushing it first. Once the stream has been closed, further write() or flush() invocations will cause an IOException to be thrown. Closing a previously closed stream has no effect.

Exceptions
IOException:
If an I/O error occurs
flushback to summary
public void flush() throws IOException

Implements abstract java.io.Writer.flush.

Implements java.io.Flushable.flush.

Doc from java.io.Writer.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.

If the intended destination of this stream is an abstraction provided by the underlying operating system, for example a file, then flushing the stream guarantees only that bytes previously written to the stream are passed to the operating system for writing; it does not guarantee that they are actually written to a physical device such as a disk drive.

Exceptions
IOException:
If an I/O error occurs
getEncodingback to summary
public String getEncoding()
writeback to summary
public void write(int c) throws IOException

Overrides java.io.Writer.write.

Doc from java.io.Writer.write.

Writes 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.

Parameters
c:int

int specifying a character to be written

Exceptions
IOException:
If an I/O error occurs
writeback to summary
public void write(char[] cbuf) throws IOException

Overrides java.io.Writer.write.

Doc from java.io.Writer.write.

Writes an array of characters.

Parameters
cbuf:char[]

Array of characters to be written

Exceptions
IOException:
If an I/O error occurs
writeback to summary
public void write(char[] cbuf, int off, int len) throws IOException

Implements abstract java.io.Writer.write.

Doc from java.io.Writer.write.

Writes a portion of an array of characters.

Parameters
cbuf:char[]

Array of characters

off:int

Offset from which to start writing characters

len:int

Number of characters to write

Exceptions
IOException:
If an I/O error occurs
writeback to summary
public void write(String str) throws IOException

Overrides java.io.Writer.write.

Doc from java.io.Writer.write.

Writes a string.

Parameters
str:String

String to be written

Exceptions
IOException:
If an I/O error occurs
writeback to summary
public void write(String str, int off, int len) throws IOException

Overrides java.io.Writer.write.

Doc from java.io.Writer.write.

Writes a portion of a string.

Parameters
str:String

A String

off:int

Offset from which to start writing characters

len:int

Number of characters to write

Exceptions
IOException:
If an I/O error occurs