|
Chapter 11 The java.io Package |
|
PrintWriter
Name
PrintWriter
- Class Name:
-
java.io.PrintWriter
- Superclass:
-
java.io.Writer
- Immediate Subclasses:
-
None
- Interfaces Implemented:
-
None
- Availability:
-
New as of JDK 1.1
The PrintWriter class provides
support for writing string representations of primitive data types and
objects to an underlying output stream. PrintWriter
uses the system's default encoding scheme to convert characters to
bytes. PrintWriter also uses
the system's own specific line separator, rather than the newline
character, for separating lines of text. This line separator is equivalent
to the value returned by:
System.getProperty("line.separator")
A PrintWriter object can be
created using a Writer object
or an OutputStream object as
its underlying stream. When a PrintWriter
is created using an OutputStream,
the constructor creates the intermediate OutputStreamWriter
that handles the conversion of characters to bytes using the default character
encoding.
All of the methods of PrintWriter
that write multiple times to the underlying output stream handle synchronization
internally, so that PrintWriter
objects are thread-safe.
A PrintWriter object is often
used to write to a BufferedWriter
object. Note that you can specify that the PrintWriter
should be flushed every time a println()
method is called by using a constructor that takes a boolean
argument.
PrintWriter objects are often
used to report errors. For this reason, the methods of this class do not
throw exceptions. Instead, the methods catch any exceptions thrown by any
downstream OutputStream or
Writer objects and set an internal
flag, so that the object can remember that a problem occurred. You can
query the internal flag by calling the checkError()
method.
public class java.io.PrintWriter extends java.io.Writer {
// Constructors
public PrintWriter(OutputStream out);
public PrintWriter(OutputStream out, boolean autoFlush);
public PrintWriter(Writer out);
public PrintWriter(Writer out, boolean autoFlush);
// Public Instance Methods
public boolean checkError();
public void close();
public void flush();
public void print(boolean b);
public void print(char c);
public void print(char[] s);
public void print(double d);
public void print(float f);
public void print(int i);
public void print(long l);
public void print(Object obj);
public void print(String s);
public void println();
public void println(boolean b);
public void println(char c);
public void println(char[] s);
public void println(double d);
public void println(float f);
public void println(int i);
public void println(long l);
public void println(Object obj);
public void println(String s);
public void write(int c);
public void write(char[] buf);
public void write(char[] buf, int off, int len);
public void write(String s);
public void write(String s, int off, int len);
// Protected Instance Methods
protected void setError();
}
- Parameters
-
- out
-
The output stream to
use.
- Description
-
This constructor creates a PrintWriter
object that sends output to the given OutputStream.
The constructor creates the intermediate OutputStreamWriter
that converts characters to bytes using the default character encoding.
- Parameters
-
- out
-
The output stream to use.
- autoFlush
-
A boolean value that indicates whether or not the
print stream is flushed every time a println()
method is called.
- Description
-
This constructor creates a PrintWriter
object that sends output to the given OutputStream.
The constructor creates the intermediate OutputStreamWriter
that converts characters to bytes using the default character encoding.
If autoFlush is true,
every time a println() method
is called, the PrintWriter object
calls its flush()
method. This behavior is different from that of a PrintStream
object, which calls its flush()
method each time a line separator or newline character is written.
- Parameters
-
- out
-
The output stream to
use.
- Description
-
This constructor creates a PrintWriter
object that sends output to the given Writer.
- Parameters
-
- out
-
The output stream to use.
- autoFlush
-
A boolean value that indicates whether or not the
print stream is flushed every time a println()
method is called.
- Description
-
This constructor creates a PrintWriter
object that sends output to the given Writer.
If autoFlush is true,
every time a println() method
is called, the PrintWriter object
calls its flush()
method. Note that this behavior is different from that of a PrintStream
object, which calls its flush()
method every time a newline character or line separator is written.
- Returns
-
true if any error has occurred;
false otherwise.
- Description
-
This method flushes any buffered output and returns true
if an error occurs. Once the error flag for a PrintWriter
object is set, it's never cleared.
- Overrides
-
Writer.close()
- Description
-
This method closes this print stream and releases any resources associated
with the object. The method does this by calling the close()
method of the underlying output stream and catching any exceptions that
are thrown.
- Overrides
-
Writer.flush()
- Description
-
This method flushes this print stream, forcing any bytes that may be buffered
to be written to the underlying output stream. The method does this by
calling the flush() method
of the underlying output stream and catching any exceptions that are thrown.
- Parameters
-
- b
-
The boolean
value to print.
- Description
-
This method writes "true" to the underlying
output stream if b is true;
otherwise it writes "false".
- Parameters
-
- c
-
The char value to print.
- Description
-
This method writes the given character to the underlying output stream.
- Parameters
-
- s
-
The char array to print.
- Description
-
This method writes the characters in the given array to the underlying
output stream.
- Parameters
-
- d
-
The double value to print.
- Description
-
This method writes a string representation of the given double
value to the underlying output stream. The string representation is identical
to the one returned by calling Double.toString(d).
- Parameters
-
- f
-
The float value to print.
- Description
-
This method writes a string representation of the given float
value to the underlying output stream. The string representation is identical
to the one returned by calling Float.toString(f).
- Parameters
-
- i
-
The int value to print.
- Description
-
This method writes a string representation of the given int
value to the underlying output stream. The string representation is identical
to the one returned by calling Integer.toString(i).
- Parameters
-
- l
-
The long value to print.
- Description
-
This method writes a string representation of the given long
value to the underlying output stream. The string representation is identical
to the one returned by calling Long.toString(l).
- Parameters
-
- obj
-
The Object to print.
- Description
-
This method writes the string representation of the given Object
to the underlying output stream. The string representation is that returned
by calling the toString()
method of Object.
- Parameters
-
- s
-
The String
to print.
- Description
-
This method writes the given String
to the underlying output stream. If String
is null, the method writes
"null".
- Description
-
This method writes a line separator to the underlying output stream.
- Parameters
-
- b
-
The boolean
value to print.
- Description
-
This method writes "true" to the underlying
output stream if b is true,
otherwise it writes "false". In either case,
the string is followed by a line separator.
- Parameters
-
- c
-
The char value to print.
- Description
-
This method writes the given character, followed by a line separator, to
the underlying output stream.
- Parameters
-
- s
-
The char array to print.
- Description
-
This method writes the characters in the given array, followed by a line
separator, to the underlying output stream.
- Parameters
-
- d
-
The double value to print.
- Description
-
This method writes a string representation of the given double
value, followed by a line separator, to the underlying output stream. The
string representation is identical to the one returned by calling Double.toString(d).
- Parameters
-
- f
-
The float value to print.
- Description
-
This method writes a string representation of the given float
value, followed by a line separator, to the underlying output stream. The
string representation is identical to the one returned by calling Float.toString(f).
- Parameters
-
- i
-
The int value to print.
- Description
-
This method writes a string representation of the given int
value, followed by a line separator, to the underlying output stream. The
string representation is identical to the one returned by calling Integer.toString(i).
- Parameters
-
- l
-
The long value to print.
- Description
-
This method writes a string representation of the given long
value, followed by a line separator, to the underlying output stream. The
string representation is identical to the one returned by calling Long.toString(l).
- Parameters
-
- obj
-
The Object to print.
- Description
-
This method writes the string representation of the given Object,
followed by a line separator, to the underlying output stream. The string
representation is that returned by calling the toString()
method of Object.
- Parameters
-
- s
-
The String to print.
- Description
-
This method writes the given String,
followed by a line separator, to the underlying output stream. If String
is null, the method writes
"null" followed
by a line separator.
- Parameters
-
- c
-
The value to write to
the stream.
- Overrides
-
Writer.write(int)
- Description
-
This method writes the character specified by the lowest two bytes of the
given integer c to the underlying
stream. The method does this by calling the write()
method of the underlying output stream and catching any exceptions that
are thrown. If necessary, the method blocks until the character is written.
- Parameters
-
- buf
-
An array of characters
to write to the stream.
- Overrides
-
Writer.write(char[])
- Description
-
This method writes the given array of characters to the underlying output
stream. The method does this by calling write(buf,
0, buf.length)
for the underlying output stream and catching any exceptions that are thrown.
If necessary, the method blocks until the characters are written.
- Parameters
-
- buf
-
An array of characters to write to the stream.
- off
-
An offset into the array.
- len
-
The number of characters to write.
- Overrides
-
Writer.write(char[], int, int)
- Description
-
This method writes len characters from the given array,
starting off elements from the beginning of the array,
to the underlying output stream. The method does this by calling write(buf,
off, len)
for the underlying output stream and catching any exceptions that are thrown.
If necessary, the method blocks until the characters are written.
- Parameters
-
- s
-
A String to write to the stream.
- Overrides
-
Writer.write(String)
- Description
-
This method writes the given String
to the underlying output stream. The method does this by calling write(s,
0, s.length)
for the underlying output stream and catching any exceptions that are thrown.
If necessary, the method blocks until the String
is written.
- Parameters
-
- s
-
A String to write to the stream.
- off
-
An offset into the string.
- len
-
The number of characters to write.
- Overrides
-
Writer.write(String, int, int)
- Description
-
This method writes len characters from the given
String, starting off elements
from the beginning of the string, to the underlying output stream. The
method does this by calling write(s,
off, len)
for the underlying output stream and catching any exceptions that are thrown.
If necessary, the method blocks until the characters of the String
are written.
- Description
-
This method sets the error state of the PrintWriter
object to true. Any subsequent
calls to getError() will return
true.
Double,
Float,
Integer,
Long,
OutputStream,
OutputStreamWriter,
Writer
|