package cn.bufanli.iodemo;
import java.io.*;
/**
* @author BuShuangLi
* @date 2018/12/27
* 打印流
* printStream
* printWriter
* 特点:
* 1.不负责数据源,只负责数据目的地
* 2.为其他流添加功能
* 3.永远不会抛出IO异常,可能抛出别的异常
*
* 两个打印流的方法都是一样的
* 构造方法:
* printStream()接受File类型、String类型、字节输出流OutputStream
* printWriter()接受File类型、String类型、字节输出流OutputStream、字符输出流Writer
*/
public class PrintDemo {
public static void main(String[] args) throws IOException {
// printMethod();
//复制方法
copyMethod();
}
/**
* 打印流,向File对象的数据目的地写数据
* 方法 print() 不换行 println 换行
* 原样输出 写入 100 文件里面就是100
*/
private static void printMethod() throws FileNotFoundException {
//创建文件打印流对象
PrintWriter writer = new PrintWriter(new File("F:\\a.txt"));
writer.print(100);
writer.flush();
writer.close();
}
/**
* 使用
*/
private static void copyMethod() throws IOException {
//源文件
BufferedReader bufferedInputStream = new BufferedReader(new FileReader(new File("f:\\a.txt")));
//创建打印输出流
PrintWriter writer = new PrintWriter(new FileWriter(new File("F:\\h.txt")), true);
//读取
int len =0;
while ((len=bufferedInputStream.read())!=-1){
writer.print(len);
}
bufferedInputStream.close();
writer.close();
}
}