Write characters to an output stream, translating characters into bytes
according to a specified character encoding. Each OutputStreamWriter
incorporates its own CharToByteConverter, and is thus a bridge from
character streams to byte streams.
The encoding used by an OutputStreamWriter may be specified by name, by
providing a CharToByteConverter, or by accepting the default encoding, which
is defined by the system property file.encoding.
Each invocation of a write() method causes the encoding converter to be
invoked on the given character(s). The resulting bytes are accumulated in a
buffer before being written to the underlying output stream. The size of
this buffer may be specified, but by default it is large enough for most
purposes. Note that the characters passed to the write() methods are not
buffered. For top efficiency, consider wrapping an OutputStreamWriter
within a BufferedWriter so as to avoid frequent converter invocations. For
= new BufferedWriter(new OutputStreamWriter(System.out));