public class PrintStream extends FilterOutputStreamimplements Appendable , Closeable
PrintStream adds functionality to another output stream, namely the ability to print representations of various data values conveniently. Two other features are provided as well. Unlike other output streams, a
PrintStream never throws an
IOException; instead, exceptional situations merely set an internal flag that can be tested via the
checkError method. Optionally, a
PrintStream can be created so as to flush automatically; this means that the
flush method is automatically invoked after a byte array is written, one of the
println methods is invoked, or a newline character or byte (
'\n') is written.
All characters printed by a PrintStream are converted into bytes using the platform's default character encoding. The class should be used in situations that require writing characters rather than bytes.PrintWriter
out| Constructor and Description |
|---|
PrintStream(File
Creates a new print stream, without automatic line flushing, with the specified file.
|
PrintStream(File
Creates a new print stream, without automatic line flushing, with the specified file and charset.
|
PrintStream(OutputStream
Creates a new print stream.
|
PrintStream(OutputStream
Creates a new print stream.
|
PrintStream(OutputStream
Creates a new print stream.
|
PrintStream(String
Creates a new print stream, without automatic line flushing, with the specified file name.
|
PrintStream(String
Creates a new print stream, without automatic line flushing, with the specified file name and charset.
|
| Modifier and Type | Method and Description |
|---|---|
PrintStream |
append(char c)
Appends the specified character to this output stream.
|
PrintStream |
append(CharSequence
Appends the specified character sequence to this output stream.
|
PrintStream |
append(CharSequence
Appends a subsequence of the specified character sequence to this output stream.
|
boolean |
checkError()
Flushes the stream and checks its error state.
|
protected void |
clearError()
Clears the internal error state of this stream.
|
void |
close()
Closes the stream.
|
void |
flush()
Flushes the stream.
|
PrintStream |
format(Locale
Writes a formatted string to this output stream using the specified format string and arguments.
|
PrintStream |
format(String
Writes a formatted string to this output stream 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.
|
PrintStream |
printf(Locale
A convenience method to write a formatted string to this output stream using the specified format string and arguments.
|
PrintStream |
printf(String
A convenience method to write a formatted string to this output stream 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 and then terminate the line.
|
void |
println(char x)
Prints a character and then terminate the line.
|
void |
println(char[] x)
Prints an array of characters and then terminate the line.
|
void |
println(double x)
Prints a double and then terminate the line.
|
void |
println(float x)
Prints a float and then terminate the line.
|
void |
println(int x)
Prints an integer and then terminate the line.
|
void |
println(long x)
Prints a long and then terminate the line.
|
void |
println(Object
Prints an Object and then terminate the line.
|
void |
println(String
Prints a String and then terminate the line.
|
protected void |
setError()
Sets the error state of the stream to
true.
|
void |
write(byte[] buf, int off, int len)
Writes
len bytes from the specified byte array starting at offset
off to this stream.
|
void |
write(int b)
Writes the specified byte to this stream.
|
writepublic PrintStream(OutputStreamout)
out - The output stream to which values and objects will be printed
PrintWriter.PrintWriter(java.io.OutputStream)
public PrintStream(OutputStreamout, boolean autoFlush)
out - The output stream to which values and objects will be printed
autoFlush - A boolean; if true, the output buffer will be flushed whenever a byte array is written, one of the
println methods is invoked, or a newline character or byte (
'\n') is written
PrintWriter.PrintWriter(java.io.OutputStream, boolean)
public PrintStream(OutputStreamout, boolean autoFlush, String encoding) throws UnsupportedEncodingException
out - The output stream to which values and objects will be printed
autoFlush - A boolean; if true, the output buffer will be flushed whenever a byte array is written, one of the
println methods is invoked, or a newline character or byte (
'\n') is written
encoding - The name of a supported
character encoding
UnsupportedEncodingException - If the named encoding is not supported
public PrintStream(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 print stream. 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(fileName) denies write access to the file
public PrintStream(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 print stream. 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(fileName) denies write access to the file
UnsupportedEncodingException - If the named charset is not supported
public PrintStream(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 print stream. 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 PrintStream(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 print stream. 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
FilterOutputStream
OutputStream.flush()
public void close()
close in interface
Closeable
close in interface
AutoCloseable
close in class
FilterOutputStream
OutputStream.close()
public boolean checkError()
true when the underlying output stream throws an
IOException other than
InterruptedIOException, and when the
setError method is invoked. If an operation on the underlying output stream throws an
InterruptedIOException, then the
PrintStream converts the exception back into an interrupt by doing:
Thread.currentThread().interrupt();
or the equivalent.
true if and only if this stream has encountered an
IOException other than
InterruptedIOException, or the
setError method has been invoked
protected void setError()
true.
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 b)
flush method will be invoked.
Note that the byte is written as given; to write a character that will be translated according to the platform's default character encoding, use the print(char) or println(char) methods.
write in class
FilterOutputStream
b - The byte to be written
print(char),
println(char)
public void write(byte[] buf,
int off,
int len)
len bytes from the specified byte array starting at offset
off to this stream. If automatic flushing is enabled then the
flush method will be invoked.
Note that the bytes will be written as given; to write characters that will be translated according to the platform's default character encoding, use the print(char) or println(char) methods.
write in class
FilterOutputStream
buf - A byte array
off - Offset from which to start taking bytes
len - Number of bytes to write
FilterOutputStream.write(int)
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 to be printed
public void println(char x)
print(char) and then
println().
x - The
char to be printed.
public void println(int x)
print(int) and then
println().
x - The
int to be printed.
public void println(long x)
print(long) and then
println().
x - a The
long to be printed.
public void println(float x)
print(float) and then
println().
x - The
float to be printed.
public void println(double x)
print(double) and then
println().
x - The
double to be printed.
public void println(char[] x)
print(char[]) and then
println().
x - an array of chars to print.
public void println(Stringx)
print(String) and then
println().
x - The
String to be printed.
public void println(Objectx)
print(String) and then
println().
x - The
Object to be printed.
public PrintStreamprintf(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 PrintStreamprintf(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 PrintStreamformat(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 PrintStreamformat(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 PrintStreamappend(CharSequence csq)
An invocation of this method of the form out.append(csq) behaves in exactly the same way as the invocation
out.print(csq.toString())
Depending on the specification of toString for the character sequence csq, the entire sequence may not be appended. For instance, invoking then toString method of a character buffer will return a subsequence whose content depends upon the buffer's position and limit.
append in interface
Appendable
csq - The character sequence to append. If
csq is
null, then the four characters
"null" are appended to this output stream.
public PrintStreamappend(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.print(csq.subSequence(start, end).toString())
append in interface
Appendable
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 PrintStreamappend(char c)
An invocation of this method of the form out.append(c) behaves in exactly the same way as the invocation
out.print(c)
append in interface
Appendable
c - The 16-bit character to append