public class PrintWriter extends Writer
PrintStream. It does not contain methods for writing raw bytes, for which a program should use unencoded byte streams.
Unlike the PrintStream class, if automatic flushing is enabled it will be done only when one of the println, printf, or format methods is invoked, rather than whenever a newline character happens to be output. These methods use the platform's own notion of line separator rather than the newline character.
Methods in this class never throw I/O exceptions, although some of its constructors may. The client may inquire as to whether any errors have occurred by invoking checkError().
| Modifier and Type | Field and Description |
|---|---|
protected Writer |
out
The underlying character-output stream of this
PrintWriter.
|
| Constructor and Description |
|---|
PrintWriter(File
Creates a new PrintWriter, without automatic line flushing, with the specified file.
|
PrintWriter(File
Creates a new PrintWriter, without automatic line flushing, with the specified file and charset.
|
PrintWriter(OutputStream
Creates a new PrintWriter, without automatic line flushing, from an existing OutputStream.
|
PrintWriter(OutputStream
Creates a new PrintWriter from an existing OutputStream.
|
PrintWriter(String
Creates a new PrintWriter, without automatic line flushing, with the specified file name.
|
PrintWriter(String
Creates a new PrintWriter, without automatic line flushing, with the specified file name and charset.
|
PrintWriter(Writer
Creates a new PrintWriter, without automatic line flushing.
|
PrintWriter(Writer
Creates a new PrintWriter.
|
| Modifier and Type | Method and Description |
|---|---|
PrintWriter |
append(char c)
Appends the specified character to this writer.
|
PrintWriter |
append(CharSequence
Appends the specified character sequence to this writer.
|
PrintWriter |
append(CharSequence
Appends a subsequence of the specified character sequence to this writer.
|
boolean |
checkError()
Flushes the stream if it's not closed and checks its error state.
|
protected void |
clearError()
Clears the error state of this stream.
|
void |
close()
Closes the stream and releases any system resources associated with it.
|
void |
flush()
Flushes the stream.
|
PrintWriter |
format(Locale
Writes a formatted string to this writer using the specified format string and arguments.
|
PrintWriter |
format(String
Writes a formatted string to this writer using the specified format string and arguments.
|
void |
print(boolean b)
Prints a boolean value.
|
void |
print(char c)
Prints a character.
|
void |
print(char[] s)
Prints an array of characters.
|
void |
print(double d)
Prints a double-precision floating-point number.
|
void |
print(float f)
Prints a floating-point number.
|
void |
print(int i)
Prints an integer.
|
void |
print(long l)
Prints a long integer.
|
void |
print(Object
Prints an object.
|
void |
print(String
Prints a string.
|
PrintWriter |
printf(Locale
A convenience method to write a formatted string to this writer using the specified format string and arguments.
|
PrintWriter |
printf(String
A convenience method to write a formatted string to this writer using the specified format string and arguments.
|
void |
println()
Terminates the current line by writing the line separator string.
|
void |
println(boolean x)
Prints a boolean value and then terminates the line.
|
void |
println(char x)
Prints a character and then terminates the line.
|
void |
println(char[] x)
Prints an array of characters and then terminates the line.
|
void |
println(double x)
Prints a double-precision floating-point number and then terminates the line.
|
void |
println(float x)
Prints a floating-point number and then terminates the line.
|
void |
println(int x)
Prints an integer and then terminates the line.
|
void |
println(long x)
Prints a long integer and then terminates the line.
|
void |
println(Object
Prints an Object and then terminates the line.
|
void |
println(String
Prints a String and then terminates the line.
|
protected void |
setError()
Indicates that an error has occurred.
|
void |
write(char[] buf)
Writes an array of characters.
|
void |
write(char[] buf, int off, int len)
Writes A Portion of an array of characters.
|
void |
write(int c)
Writes a single character.
|
void |
write(String
Writes a string.
|
void |
write(String
Writes a portion of a string.
|
protected Writerout
PrintWriter.
public PrintWriter(Writerout)
out - A character-output stream
public PrintWriter(Writerout, boolean autoFlush)
out - A character-output stream
autoFlush - A boolean; if true, the
println,
printf, or
format methods will flush the output buffer
public PrintWriter(OutputStreamout)
out - An output stream
OutputStreamWriter.OutputStreamWriter(java.io.OutputStream)
public PrintWriter(OutputStreamout, boolean autoFlush)
out - An output stream
autoFlush - A boolean; if true, the
println,
printf, or
format methods will flush the output buffer
OutputStreamWriter.OutputStreamWriter(java.io.OutputStream)
public PrintWriter(StringfileName) throws FileNotFoundException
OutputStreamWriter, which will encode characters using the
default charset for this instance of the Java virtual machine.
fileName - The name of the file to use as the destination of this writer. If the file exists then it will be truncated to zero size; otherwise, a new file will be created. The output will be written to the file and is buffered.
FileNotFoundException - If the given string does not denote an existing, writable regular file and a new regular file of that name cannot be created, or if some other error occurs while opening or creating the file
SecurityException - If a security manager is present and
checkWrite(fileName) denies write access to the file
public PrintWriter(StringfileName, String csn) throws FileNotFoundException , UnsupportedEncodingException
OutputStreamWriter, which will encode characters using the provided charset.
fileName - The name of the file to use as the destination of this writer. If the file exists then it will be truncated to zero size; otherwise, a new file will be created. The output will be written to the file and is buffered.
csn - The name of a supported
charset
FileNotFoundException - If the given string does not denote an existing, writable regular file and a new regular file of that name cannot be created, or if some other error occurs while opening or creating the file
SecurityException - If a security manager is present and
checkWrite(fileName) denies write access to the file
UnsupportedEncodingException - If the named charset is not supported
public PrintWriter(Filefile) throws FileNotFoundException
OutputStreamWriter, which will encode characters using the
default charset for this instance of the Java virtual machine.
file - The file to use as the destination of this writer. If the file exists then it will be truncated to zero size; otherwise, a new file will be created. The output will be written to the file and is buffered.
FileNotFoundException - If the given file object does not denote an existing, writable regular file and a new regular file of that name cannot be created, or if some other error occurs while opening or creating the file
SecurityException - If a security manager is present and
checkWrite(file.getPath()) denies write access to the file
public PrintWriter(Filefile, String csn) throws FileNotFoundException , UnsupportedEncodingException
OutputStreamWriter, which will encode characters using the provided charset.
file - The file to use as the destination of this writer. If the file exists then it will be truncated to zero size; otherwise, a new file will be created. The output will be written to the file and is buffered.
csn - The name of a supported
charset
FileNotFoundException - If the given file object does not denote an existing, writable regular file and a new regular file of that name cannot be created, or if some other error occurs while opening or creating the file
SecurityException - If a security manager is present and
checkWrite(file.getPath()) denies write access to the file
UnsupportedEncodingException - If the named charset is not supported
public void flush()
flush in interface
Flushable
flush in class
Writer
checkError()
public void close()
close in interface
Closeable
close in interface
AutoCloseable
close in class
Writer
checkError()
public boolean checkError()
true if the print stream has encountered an error, either on the underlying output stream or during a format conversion.
protected void setError()
This method will cause subsequent invocations of checkError() to return true until clearError() is invoked.
protected void clearError()
This method will cause subsequent invocations of checkError() to return false until another write operation fails and invokes setError().
public void write(int c)
public void write(char[] buf,
int off,
int len)
public void write(char[] buf)
public void write(Strings, int off, int len)
public void write(Strings)
public void print(boolean b)
String.valueOf(boolean) is translated into bytes according to the platform's default character encoding, and these bytes are written in exactly the manner of the
write(int) method.
b - The
boolean to be printed
public void print(char c)
write(int) method.
c - The
char to be printed
public void print(int i)
String.valueOf(int) is translated into bytes according to the platform's default character encoding, and these bytes are written in exactly the manner of the
write(int) method.
i - The
int to be printed
Integer.toString(int)
public void print(long l)
String.valueOf(long) is translated into bytes according to the platform's default character encoding, and these bytes are written in exactly the manner of the
write(int) method.
l - The
long to be printed
Long.toString(long)
public void print(float f)
String.valueOf(float) is translated into bytes according to the platform's default character encoding, and these bytes are written in exactly the manner of the
write(int) method.
f - The
float to be printed
Float.toString(float)
public void print(double d)
String.valueOf(double) is translated into bytes according to the platform's default character encoding, and these bytes are written in exactly the manner of the
write(int) method.
d - The
double to be printed
Double.toString(double)
public void print(char[] s)
write(int) method.
s - The array of chars to be printed
NullPointerException - If
s is
null
public void print(Strings)
null then the string
"null" is printed. Otherwise, the string's characters are converted into bytes according to the platform's default character encoding, and these bytes are written in exactly the manner of the
write(int) method.
s - The
String to be printed
public void print(Objectobj)
String.valueOf(Object) method is translated into bytes according to the platform's default character encoding, and these bytes are written in exactly the manner of the
write(int) method.
obj - The
Object to be printed
Object.toString()
public void println()
line.separator, and is not necessarily a single newline character (
'\n').
public void println(boolean x)
print(boolean) and then
println().
x - the
boolean value to be printed
public void println(char x)
print(char) and then
println().
x - the
char value to be printed
public void println(int x)
print(int) and then
println().
x - the
int value to be printed
public void println(long x)
print(long) and then
println().
x - the
long value to be printed
public void println(float x)
print(float) and then
println().
x - the
float value to be printed
public void println(double x)
print(double) and then
println().
x - the
double value to be printed
public void println(char[] x)
print(char[]) and then
println().
x - the array of
char values to be printed
public void println(Stringx)
print(String) and then
println().
x - the
String value to be printed
public void println(Objectx)
print(String) and then
println().
x - The
Object to be printed.
public PrintWriterprintf(String format, Object ... args)
An invocation of this method of the form out.printf(format, args) behaves in exactly the same way as the invocation
out.format(format, args)
format - A format string as described in
Format string syntax.
args - Arguments referenced by the format specifiers in the format string. If there are more arguments than format specifiers, the extra arguments are ignored. The number of arguments is variable and may be zero. The maximum number of arguments is limited by the maximum dimension of a Java array as defined by
The Java™ Virtual Machine Specification. The behaviour on a
null argument depends on the
conversion.
IllegalFormatException - If a format string contains an illegal syntax, a format specifier that is incompatible with the given arguments, insufficient arguments given the format string, or other illegal conditions. For specification of all possible formatting errors, see the
Details section of the formatter class specification.
NullPointerException - If the
format is
null
public PrintWriterprintf(Locale l, String format, Object ... args)
An invocation of this method of the form out.printf(l, format, args) behaves in exactly the same way as the invocation
out.format(l, format, args)
l - The
locale to apply during formatting. If
l is
null then no localization is applied.
format - A format string as described in
Format string syntax.
args - Arguments referenced by the format specifiers in the format string. If there are more arguments than format specifiers, the extra arguments are ignored. The number of arguments is variable and may be zero. The maximum number of arguments is limited by the maximum dimension of a Java array as defined by
The Java™ Virtual Machine Specification. The behaviour on a
null argument depends on the
conversion.
IllegalFormatException - If a format string contains an illegal syntax, a format specifier that is incompatible with the given arguments, insufficient arguments given the format string, or other illegal conditions. For specification of all possible formatting errors, see the
Details section of the formatter class specification.
NullPointerException - If the
format is
null
public PrintWriterformat(String format, Object ... args)
The locale always used is the one returned by Locale.getDefault(), regardless of any previous invocations of other formatting methods on this object.
format - A format string as described in
Format string syntax.
args - Arguments referenced by the format specifiers in the format string. If there are more arguments than format specifiers, the extra arguments are ignored. The number of arguments is variable and may be zero. The maximum number of arguments is limited by the maximum dimension of a Java array as defined by
The Java™ Virtual Machine Specification. The behaviour on a
null argument depends on the
conversion.
IllegalFormatException - If a format string contains an illegal syntax, a format specifier that is incompatible with the given arguments, insufficient arguments given the format string, or other illegal conditions. For specification of all possible formatting errors, see the
Details section of the Formatter class specification.
NullPointerException - If the
format is
null
public PrintWriterformat(Locale l, String format, Object ... args)
l - The
locale to apply during formatting. If
l is
null then no localization is applied.
format - A format string as described in
Format string syntax.
args - Arguments referenced by the format specifiers in the format string. If there are more arguments than format specifiers, the extra arguments are ignored. The number of arguments is variable and may be zero. The maximum number of arguments is limited by the maximum dimension of a Java array as defined by
The Java™ Virtual Machine Specification. The behaviour on a
null argument depends on the
conversion.
IllegalFormatException - If a format string contains an illegal syntax, a format specifier that is incompatible with the given arguments, insufficient arguments given the format string, or other illegal conditions. For specification of all possible formatting errors, see the
Details section of the formatter class specification.
NullPointerException - If the
format is
null
public PrintWriterappend(CharSequence csq)
An invocation of this method of the form out.append(csq) behaves in exactly the same way as the invocation
out.write(csq.toString())
Depending on the specification of toString for the character sequence csq, the entire sequence may not be appended. For instance, invoking the toString method of a character buffer will return a subsequence whose content depends upon the buffer's position and limit.
append in interface
Appendable
append in class
Writer
csq - The character sequence to append. If
csq is
null, then the four characters
"null" are appended to this writer.
public PrintWriterappend(CharSequence csq, int start, int end)
An invocation of this method of the form out.append(csq, start, end) when csq is not null, behaves in exactly the same way as the invocation
out.write(csq.subSequence(start, end).toString())
append in interface
Appendable
append in class
Writer
csq - The character sequence from which a subsequence will be appended. If
csq is
null, then characters will be appended as if
csq contained the four characters
"null".
start - The index of the first character in the subsequence
end - The index of the character following the last character in the subsequence
IndexOutOfBoundsException - If
start or
end are negative,
start is greater than
end, or
end is greater than
csq.length()
public PrintWriterappend(char c)
An invocation of this method of the form out.append(c) behaves in exactly the same way as the invocation
out.write(c)
append in interface
Appendable
append in class
Writer
c - The 16-bit character to append