PrintWriter(标准字符输出流)
一、特点
- PrintWriter实现了PritnStream的所有print方法
- 可以按行写出字符串,并且可以自动行刷新
- PrintWriter通过连接BufferedWriter(字符输出缓冲流,内部有缓冲区可以进行块写操作提供效率)实现缓冲功能
二、PrintWriter执行原理
- 对于PrintWriter,所有println方法都在内部调用print方法,然后print方法调用write方法,传入OutputStream时,PrintWriter会在内部构造一个BufferedWriter,而传入Writer时,PrintStream内部直接使用该Writer,此时该Writer决定PrintWriter是否进行了缓冲
- PrintStream是字节流,有处理raw byte的方法,write(int)和write(byte[],int,int);PrintWriter是字符流,它没有处理raw byte的方法
- PrintWriter的auto flushing机制:仅在调用println方法时发生auto flushing
三、测试用例
import java.io.PrintWriter;
public