打印流
println
方法來自于java.io.PrintStream
類
一粹湃、PrintStream類
PrintStream :【繼承OutputStream】為其他輸出流添加了功能认境,使它們能夠方便地打印各種數(shù)據(jù)值表示形式彭羹。
1.PrintStream特點:
- 只負責數(shù)據(jù)的輸出,不負責數(shù)據(jù)的讀取
- 與其他輸出流不同贞岭,PrintStream 永遠不會拋出 IOException
- 有特有的方法,print,println
void print(任意類型的值)
void println(任意類型的值并換行)
2.構造方法:
-
PrintStream(File file)
:輸出的目的地是一個文件 -
PrintStream(OutputStream out)
:輸出的目的地是一個字節(jié)輸出流 -
PrintStream(String fileName)
:輸出的目的地是一個文件路徑
3.繼承自父類的成員方法(省略public):
-
void close()
:關閉此輸出流并釋放與此流相關聯(lián)的任何系統(tǒng)資源液兽。 -
void flush()
:刷新此輸出流并強制任何緩沖的輸出字節(jié)被寫出奖蔓。 -
void write(byte[] b)
:將 b.length字節(jié)從指定的字節(jié)數(shù)組寫入此輸出流以蕴。 -
void write(byte[] b, int off, int len)
:從指定的字節(jié)數(shù)組寫入 len字節(jié),從偏移量 off開始輸出到此輸出流祭刚。 -
abstract void write(int b)
:將指定的字節(jié)輸出流牌捷。
4.注意:
- 如果使用繼承自父類的write方法寫數(shù)據(jù),那么查看數(shù)據(jù)的時候會查詢編碼表,例如97->a
- 如果使用自己特有的方法print/println方法寫數(shù)據(jù),寫的數(shù)據(jù)原樣輸出,例如97->97
5.改變打印流向
System.out
就是PrintStream
類型的,只不過它的流向是系統(tǒng)規(guī)定的涡驮,打印在控制臺上暗甥。不過,既然是流對象捉捅,我們就可以玩一個"小把戲"撤防,改變它的流向
使用System.setOut方法改變輸出語句的目的地改為參數(shù)中傳遞的打印流的目的地
-
static void setOut(PrintStream out)
:重新分配“標準”輸出流。
// 創(chuàng)建打印流棒口,指定文件名稱
PrintStream ps = new PrintStream("F:\\test\\changestream.txt");
// 設置系統(tǒng)的打印流向寄月,輸出到ps.txt
System.setOut(ps);
System.out.println("你看,屏幕上沒有打幽暗省剥懒!");