|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
java.lang.Object java.io.OutputStream java.io.FilterOutputStream java.io.PrintStream
public class PrintStream
PrintStream
為其他輸出串流添加了功能,使它們能夠方便地列印各種資料值表示形式。它還提供其他兩項功能。與其他輸出串流不同,PrintStream
永遠不會拋出 IOException
;而是,異常情況僅設置可通過 checkError
方法測試的內部標誌。另外,為了自動刷新,可以創建一個 PrintStream
;這意味著可在寫入 byte 陣列之後自動調用 flush
方法,可調用其中一個 println
方法,或寫入一個換行符或位元組 ('\n'
)。
PrintStream
列印的所有字元都使用平臺的預設字元編碼轉換為位元組。在需要寫入字元而不是寫入位元組的情況下,應該使用
類別。
PrintWriter
欄位摘要 |
---|
從類別 java.io.FilterOutputStream 繼承的欄位 |
---|
out |
建構子摘要 | |
---|---|
PrintStream(File file)
創建具有指定檔案且不帶自動行刷新的新列印串流。 |
|
PrintStream(File file,
String csn)
創建具有指定檔案名稱和字元集且不帶自動行刷新的新列印串流。 |
|
PrintStream(OutputStream out)
創建新的列印串流。 |
|
PrintStream(OutputStream out,
boolean autoFlush)
創建新的列印串流。 |
|
PrintStream(OutputStream out,
boolean autoFlush,
String encoding)
創建新的列印串流。 |
|
PrintStream(String fileName)
創建具有指定檔案名稱且不帶自動行刷新的新列印串流。 |
|
PrintStream(String fileName,
String csn)
創建具有指定檔案名稱和字元集且不帶自動行刷新的新列印串流。 |
方法摘要 | |
---|---|
PrintStream |
append(char c)
將指定字元添加到此輸出串流。 |
PrintStream |
append(CharSequence csq)
將指定字元序列添加到此輸出串流。 |
PrintStream |
append(CharSequence csq,
int start,
int end)
將指定字元序列的子序列添加到此輸出串流。 |
boolean |
checkError()
刷新串流並檢查其錯誤狀態。 |
protected void |
clearError()
清除此串流的內部錯誤狀態。 |
void |
close()
關閉串流。 |
void |
flush()
刷新該串流的緩衝。 |
PrintStream |
format(Locale l,
String format,
Object... args)
使用指定格式字元串和參數將格式化字元串寫入此輸出串流中。 |
PrintStream |
format(String format,
Object... args)
使用指定格式字元串和參數將格式化字元串寫入此輸出串流中。 |
void |
print(boolean b)
列印 boolean 值。 |
void |
print(char c)
列印字元。 |
void |
print(char[] s)
列印字元陣列。 |
void |
print(double d)
列印雙精度浮點數。 |
void |
print(float f)
列印浮點數。 |
void |
print(int i)
列印整數。 |
void |
print(long l)
列印 long 整數。 |
void |
print(Object obj)
列印物件。 |
void |
print(String s)
列印字元串。 |
PrintStream |
printf(Locale l,
String format,
Object... args)
使用指定格式字元串和參數將格式化的字元串寫入此輸出串流的便捷方法。 |
PrintStream |
printf(String format,
Object... args)
使用指定格式字元串和參數將格式化的字元串寫入此輸出串流的便捷方法。 |
void |
println()
通過寫入行分隔符字元串終止當前行。 |
void |
println(boolean x)
列印 boolean 值,然後終止行。 |
void |
println(char x)
列印字元,然後終止該行。 |
void |
println(char[] x)
列印字元陣列,然後終止該行。 |
void |
println(double x)
列印 double,然後終止該行。 |
void |
println(float x)
列印 float,然後終止該行。 |
void |
println(int x)
列印整數,然後終止該行。 |
void |
println(long x)
列印 long,然後終止該行。 |
void |
println(Object x)
列印 Object,然後終止該行。 |
void |
println(String x)
列印 String,然後終止該行。 |
protected void |
setError()
將該串流的錯誤狀態設置為 true 。 |
void |
write(byte[] buf,
int off,
int len)
將 len 位元組從指定的初始偏移量為 off 的 byte 陣列寫入此串流。 |
void |
write(int b)
將指定的位元組寫入此串流。 |
從類別 java.io.FilterOutputStream 繼承的方法 |
---|
write |
從類別 java.lang.Object 繼承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
建構子詳細資訊 |
---|
public PrintStream(OutputStream out)
out
- 將向其列印值和物件的輸出串流PrintWriter.PrintWriter(java.io.OutputStream)
public PrintStream(OutputStream out, boolean autoFlush)
out
- 將向其列印值和物件的輸出串流autoFlush
- boolean 變數;如果為 true,則每當寫入 byte 陣列、調用其中一個 println
方法或寫入換行符或位元組 ('\n'
) 時都會刷新輸出緩衝區PrintWriter.PrintWriter(java.io.OutputStream, boolean)
public PrintStream(OutputStream out, boolean autoFlush, String encoding) throws UnsupportedEncodingException
out
- 將向其列印值和物件的輸出串流autoFlush
- boolean 變數;如果為 true,則每當寫入 byte 陣列、調用其中一個 println
方法或寫入換行符或位元組 ('\n'
) 時都會刷新緩衝區encoding
- 受支持的字元編碼的名稱
UnsupportedEncodingException
- 如果不支持指定的編碼public PrintStream(String fileName) throws FileNotFoundException
OutputStreamWriter
,後者將使用此 Java 虛擬機器實例的預設 charset 進行字元編碼。
fileName
- 要用作此列印串流目標的檔案名稱。如果存在該檔案,則將其大小截取為零;否則,創建一個新檔案。將輸出寫入檔案中,並對其進行緩衝處理。
FileNotFoundException
- 如果給定的檔案物件不表示現有的可寫常規檔案,並且無法創建該名稱的新常規檔案,或者在打開或創建檔案時發生其他一些錯誤
SecurityException
- 如果存在安全管理器,並且 checkWrite(fileName)
拒絕對檔案進行寫入存取。public PrintStream(String fileName, String csn) throws FileNotFoundException, UnsupportedEncodingException
OutputStreamWriter
,後者將使用提供的字元集進行字元編碼。
fileName
- 要用作此列印串流目標的檔案名稱。如果存在該檔案,則將其大小截取為零;否則,創建一個新檔案。將輸出寫入檔案中,並對其進行緩衝處理。csn
- 受支持的字元集的名稱
FileNotFoundException
- 如果給定的檔案物件不表示現有的可寫常規檔案,並且無法創建該名稱的新常規檔案,或者在打開或創建檔案時發生其他一些錯誤
SecurityException
- 如果存在安全管理器,並且 checkWrite(fileName)
拒絕對檔案進行寫入存取。
UnsupportedEncodingException
- 如果不支持指定字元集public PrintStream(File file) throws FileNotFoundException
OutputStreamWriter
,後者將使用此 Java 虛擬機器實例的預設 charset 進行字元編碼。
file
- 要用作此列印串流目標的檔案。如果存在該檔案,則將其大小截取為零;否則,創建一個新檔案。將輸出寫入檔案中,並對其進行緩衝處理。
FileNotFoundException
- 如果給定的檔案物件不表示現有的可寫常規檔案,並且無法創建該名稱的新常規檔案,或者在打開或創建檔案時發生其他一些錯誤
SecurityException
- 如果存在安全管理器,並且 checkWrite(file.getPath())
拒絕對檔案進行寫入存取。public PrintStream(File file, String csn) throws FileNotFoundException, UnsupportedEncodingException
OutputStreamWriter
,後者將使用提供的字元集進行字元編碼。
file
- 要用作此列印串流目標的檔案。如果存在該檔案,則將其大小截取為零;否則,創建一個新檔案。將輸出寫入檔案中,並對其進行緩衝處理。csn
- 受支持的字元集的名稱
FileNotFoundException
- 如果給定的檔案物件不表示現有的可寫常規檔案,並且無法創建該名稱的新常規檔案,或者在打開或創建檔案時發生其他一些錯誤
SecurityException
- 如果存在安全管理器,並且 checkWrite(file.getPath())
拒絕對檔案進行寫入存取
UnsupportedEncodingException
- 如果不支持指定字元集方法詳細資訊 |
---|
public void flush()
Flushable
中的 flush
FilterOutputStream
中的 flush
OutputStream.flush()
public void close()
Closeable
中的 close
FilterOutputStream
中的 close
OutputStream.close()
public boolean checkError()
IOException
而不是 InterruptedIOException
時,以及調用 setError
方法時,內部錯誤狀態將被設置為 true
。如果對底層輸出串流的操作拋出 InterruptedIOException
,則通過調用以下方法或等效方法,PrintStream
將該異常轉換回中斷狀態:
Thread.currentThread().interrupt();
IOException
而不是 InterruptedIOException
時,或已調用 setError
方法時,返回 true
。protected void setError()
true
。
在調用 clearError()
之前,此方法將導致 checkError()
的後續調用返回 true。
protected void clearError()
在另一個寫入操作失敗並調用 setError()
之前,此方法將導致 checkError()
的後續調用返回 false。
public void write(int b)
flush
方法。
要注意按給定寫入位元組;要寫入將根據平臺的預設字元編碼轉換的字元,請使用 print(char)
或 println(char)
方法。
FilterOutputStream
中的 write
b
- 要寫入的位元組print(char)
,
println(char)
public void write(byte[] buf, int off, int len)
len
位元組從指定的初始偏移量為 off
的 byte 陣列寫入此串流。如果啟用自動刷新,則調用 flush
方法。
注意,要按給定寫入位元組;要寫入將根據平臺的預設字元編碼轉換的字元,請使用 print(char)
或 println(char)
方法。
FilterOutputStream
中的 write
buf
- byte 陣列off
- 相對於開始寫入位元組處的偏移量len
- 要寫入的位元組數FilterOutputStream.write(int)
public void print(boolean b)
String.valueOf(boolean)
產生的字元串轉換為位元組,並完全以 write(int)
方法的方式寫入這些位元組。
b
- 要列印的 boolean
public void print(char c)
write(int)
方法的方式寫入這些位元組。
c
- 要列印的 char
public void print(int i)
String.valueOf(int)
產生的字元串轉換為位元組,並完全以 write(int)
方法的方式寫入這些位元組。
i
- 要列印的 int
Integer.toString(int)
public void print(long l)
String.valueOf(long)
產生的字元串轉換為位元組,並完全以 write(int)
方法的方式寫入這些位元組。
l
- 要列印的 long
Long.toString(long)
public void print(float f)
String.valueOf(float)
產生的字元串轉換為位元組,並完全以 write(int)
方法的方式寫入這些位元組。
f
- 要列印的 float
Float.toString(float)
public void print(double d)
String.valueOf(double)
產生的字元串轉換為位元組,並完全以 write(int)
方法的方式寫入這些位元組。
d
- 要列印的 double
Double.toString(double)
public void print(char[] s)
write(int)
方法的方式寫入這些位元組。
s
- 要列印的字元陣列
NullPointerException
- 如果 s
為 null
public void print(String s)
null
,則列印字元串 "null"
。否則,按照平臺的預設字元編碼將字元串的字元轉換為位元組,並完全以 write(int)
方法的方式寫入這些位元組。
s
- 要列印的 String
public void print(Object obj)
String.valueOf(Object)
方法產生的字元串轉換為位元組,並完全以 write(int)
方法的方式寫入這些位元組。
obj
- 要列印的 Object
Object.toString()
public void println()
line.separator
定義,不一定是單個換行符 ('\n'
)。
public void println(boolean x)
print(boolean)
然後調用 println()
一樣。
x
- 要列印的 boolean
public void println(char x)
print(char)
然後調用 println()
一樣。
x
- 要列印的 char
。public void println(int x)
print(int)
然後調用 println()
一樣。
x
- 要列印的 int
。public void println(long x)
print(long)
然後調用 println()
一樣。
x
- 要列印的 long
。public void println(float x)
print(float)
然後調用 println()
一樣。
x
- 要列印的 float
。public void println(double x)
print(double)
然後調用 println()
一樣。
x
- 要列印的 double
。public void println(char[] x)
print(char[])
然後調用 println()
一樣。
x
- 要列印的字元陣列。public void println(String x)
print(String)
然後調用 println()
一樣。
x
- 要列印的 String
。public void println(Object x)
print(String)
再調用 println()
一樣。
x
- 要列印的 Object
。public PrintStream printf(String format, Object... args)
調用此方法的 out.printf(format, args) 形式,行為與以下調用完全相同:
out.format(format, args)
format
- 在格式字元串的語法中描述的格式字元串args
- 格式字元串中的格式說明符參考的參數。如果參數多於格式說明符,則忽略額外的參數。參數的數量是可變的,並且可以為零。參數的最大數量受到 Java Virtual Machine Specification 定義的 Java 陣列的最大維數的限制。針對 null 參數的行為依賴於 conversion。
IllegalFormatException
- 如果格式字元串包含非法語法、與給定參數不相容的格式說明符、對給定格式字元串而言不夠充足的參數或其他非法條件。有關所有可能的格式錯誤的規範,請參閱 formatter 類別規範的詳細資訊部分。
NullPointerException
- 如果 format 為 nullpublic PrintStream printf(Locale l, String format, Object... args)
調用此方法的 out.printf(l, format, args) 形式,行為與以下調用完全相同:
out.format(l, format, args)
l
- 格式化過程中應用的 locale。如果 l 為 null,則不應用本地化。format
- 在格式字元串的語法中描述的格式字元串args
- 格式字元串中的格式說明符參考的參數。如果參數多於格式說明符,則忽略額外的參數。參數的數量是可變的,並且可以為零。參數的最大數量受到 Java Virtual Machine Specification 定義的 Java 陣列的最大維數的限制。針對 null 參數的行為依賴於 conversion。
IllegalFormatException
- 如果格式字元串包含非法語法、與給定參數不相容的格式說明符、對給定格式字元串而言不夠充足的參數或其他非法條件。有關所有可能的格式錯誤的規範,請參閱 formatter 類別規範的詳細資訊部分。
NullPointerException
- 如果 format 為 nullpublic PrintStream format(String format, Object... args)
始終使用的語言環境是由 Locale.getDefault()
返回的語言環境,不管以前在此物件上調用了其他什麼樣的格式化方法。
format
- 在格式字元串的語法中描述的格式字元串args
- 格式字元串中的格式說明符參考的參數。如果參數多於格式說明符,則忽略額外的參數。參數的數量是可變的,並且可以為零。參數的最大數量受到 Java Virtual Machine Specification 定義的 Java 陣列的最大維數的限制。針對 null 參數的行為依賴於 conversion。
IllegalFormatException
- 如果格式字元串包含非法語法、與給定參數不相容的格式說明符、對給定格式字元串而言不夠充足的參數或其他非法條件。有關所有可能的格式錯誤的規範,請參閱 formatter 類別規範的詳細資訊部分。
NullPointerException
- 如果 format 為 nullpublic PrintStream format(Locale l, String format, Object... args)
l
- 格式化過程中應用的 locale。如果 l 為 null,則不應用本地化。format
- 在格式字元串的語法中描述的格式字元串args
- 格式字元串中的格式說明符參考的參數。如果參數多於格式說明符,則忽略額外的參數。參數的數量是可變的,並且可以為零。參數的最大數量受到 Java Virtual Machine Specification 定義的 Java 陣列的最大維數的限制。針對 null 參數的行為依賴於 conversion。
IllegalFormatException
- 如果格式字元串包含非法語法、與給定參數不相容的格式說明符、對給定格式字元串而言不夠充足的參數或其他非法條件。有關所有可能的格式錯誤的規範,請參閱 formatter 類別規範的詳細資訊部分。
NullPointerException
- 如果 format 為 nullpublic PrintStream append(CharSequence csq)
此方法調用 out.append(csq) 的行為與調用下列方法完全相同:
out.print(csq.toString())
可能不添加整個序列,也可能添加,具體取決於字元序列 csq 的 toString 規範。例如,調用一個字元緩衝區的 toString 方法將返回一個子序列,其內容取決於緩衝區的位置和限制。
Appendable
中的 append
csq
- 要添加的字元序列。如果 csq 為 null,則向此輸出串流添加四個字元 "null"。
public PrintStream append(CharSequence csq, int start, int end)
當 csq 不為 null 時,調用該方法的 out.append(csq、start、end) 形式,行為與以下調用完全相同:
out.print(csq.subSequence(start, end).toString())
Appendable
中的 append
csq
- 要添加子序列的字元序列。如果 csq 為 null,則添加這些字元,就好像 csq 套件含四個字元 "null" 一樣。start
- 子序列中第一個字元的索引end
- 子序列中最後一個字元後面的字元的索引
IndexOutOfBoundsException
- 如果 start 或 end 為負,而 start 大於 end 或者 end 大於 csq.length()public PrintStream append(char c)
調用此方法的 out.append(c) 形式,行為與以下調用完全相同:
out.print(c)
Appendable
中的 append
c
- 要添加的 16 位字元
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。