PrintStream
该流就是我们最常用的System.out.println的流。println是里面的一个构造方法
public static void main(String[] args) throws FileNotFoundException {
//打印流System.out--->简化System.out.println输出到控制台
/*
最里层:
节点流
装饰流
类
*/
PrintStream ps = System.out;
/*System.out是默认输出到控制台,也可以默认输出到文件里面*/
ps.println("放工拉");
ps.println("饮曳杯凉凉的啤酒");
ps.println(true);
/*从构造器可以看出它还提供了很多的方法,包括输出流方法*/
ps = new PrintStream(new BufferedOutputStream(new FileOutputStream("abc.txt")), true);
ps.println("放工拉");
ps.println("饮曳杯凉凉的啤酒");
ps.println(true);
/*
可以直接用PrintStream流打印内容到文件里面
*/
//使用重定向输出端的方法使得System内容输入到指定位置--->setOUt重定向输出端,setIn重定向输入端
System.setOut(ps); //这里面要发文件的路径
System.out.println("放工啦,饮酒啦!!!");
/*
这样以后所有的输出都会输出到指定的路径下
*/
/*重定向回控制台*/
/*
重新建立一个节点流,使其套在控制台上
*/
// System.setOut(new PrintStream(new BufferedOutputStream(new FileOutputStream(FileDescriptor.out))));
// /*
// 标准的输入输出端口
// */
// System.out.println("Lucfier");
/*
总结:
1、setOut是重定向输出端,这个输出端是个打印流
2、System.out打印到控制台上
3、System.out默认就是PrintStream
*/
ps.close();
writer();
}
PrintWriter
/**
* PrintWriter
*/
public static void writer() throws FileNotFoundException {
PrintWriter pw = new PrintWriter(new BufferedOutputStream(new FileOutputStream("abc.txt")));
System.out.println("Lucifer!!!");
pw.close();
}