Print Writers
The
java.io.PrintWriter
class is a subclass of java.io.Writer
that
contains the familiar print()
and
println()
methods from
System.out
and other instances of
PrintStream
. It’s deliberately similar to
the java.io.PrintStream
class. In Java 1.0
PrintStream
was used for text-oriented output, but
it didn’t handle multiple-byte character sets particularly well
(or really at all). In Java 1.1 and later, streams are only for
byte-oriented and numeric output; writers should be used when you
want to output text.
The main difference between PrintStream
and
PrintWriter
is that PrintWriter
handles multiple-byte and other non-ISO Latin-1 character sets
properly. The other, more minor difference is that automatic flushing
is performed only when println()
is invoked, not
every time a newline character is seen. Sun would probably like to
deprecate PrintStream
and use
PrintWriter
instead, but that would break too much
existing code. (In fact, Sun did deprecate the
PrintStream()
constructors in 1.1, but they
undeprecated them in Java 2.)
There are four constructors in this class:
public PrintWriter(Writer out) public PrintWriter(Writer out, boolean autoFlush) public PrintWriter(OutputStream out) public PrintWriter(OutputStream out, boolean autoFlush)
The PrintWriter
can send text either to an output
stream or to another writer. If autoFlush
is set
to true
, the PrintWriter
is
flushed every time println()
is invoked.
The PrintWriter
class implements the abstract
write()
method from
java.io.Writer ...
Get Java I/O now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.