1. 程式人生 > >打印流PrintStream

打印流PrintStream

是什麽 強制 不同 pack abstract 什麽 class 字節數組 tro

打印流PrintStream

PrintStream extends OutputStream

1、打印流的特點

  • 只負責數據的輸出,不負責數據的讀取
  • 與其他的流不同,打印流永遠不會拋出IOException
  • 有特有的方法print、println

2、構造方法

構造方法 作用
PrintStream(File file) 輸出的目的地是一個文件
PrintStream(OutputStream out) 輸出的目的地是一個字節輸出流
PrintStream(String filename) 輸出的目的地是一個文件路徑

3、可以使用父類OutputStream的方法

方法 作用
public void close() 關閉輸出流並釋放與此流相關的任何系統資源
public void flush() 刷新輸出流,並強制任何緩沖的輸出字節被寫出
public void write(byte[] b) 將b.length字節從指定的字節數組寫入此輸出流,內存寫到硬盤
public void write(byte[] b, int off, int len) 從指定的b字節數組寫入len字節,從偏移量off開始輸出到此輸出流
public abstract void write(int b) 將指定的字節輸出到流

註意:

  • 如果使用的父類的方法write來寫數據,那麽就會查看編碼表比如write(98) -->b
  • 如果是使用自己的print、println方法,那麽就是寫什麽就是什麽println(99)--> 99
package cn.zhuobo.day15.aboutPrintStream;

import java.io.FileNotFoundException;
import java.io.PrintStream;

public class Demo01PrintStream {
    public static void main(String[] args) throws FileNotFoundException {
        PrintStream ps = new PrintStream("day15-code/printStream.txt");
        ps.write(99);
        ps.println("hello");
        ps.println(99);
        ps.println(true);
        ps.close();
    }
}

4、靜態方法setOut

static void setOut(PrintStream ps):改變輸出語句的目的地為參數中傳遞的打印流的目的地

package cn.zhuobo.day15.aboutPrintStream;

import java.io.FileNotFoundException;
import java.io.PrintStream;

public class Demo01PrintStream {
    public static void main(String[] args) throws FileNotFoundException {
        PrintStream ps = new PrintStream("day15-code/printStream.txt");

        System.out.println("這句話打印在控制臺");
        System.setOut(ps);
        
        System.out.println("這句話就輸出到了ps的目的地,也就是day15-code/printStream.txt");
        ps.close();
    }
}

打印流PrintStream