打印流-PrintStream
打印流-PrintStream
java.io.PrintStream为其他输出流添加了功能,使其他的流能够更方便的打印各种数据值表现形式
PrintStream特点:
1.只负责数据的输入,不负责数据的读取
2.与其他流不同,PrintStream不会抛出IOException异常
3.特有方法print()和println()能够打印任何类型的值
继承关系:
java.lang.Object--java.io.OutputStream--java.io.FilterOutputStream--java.io.PrintStream
构造方法:
PrintStream(File file)使用指定的文件创建一个新的打印流,而不需要自动换行。
PrintStream(File file, String csn)使用指定的文件和字符集创建新的打印流,而不需要自动换行。
PrintStream(OutputStream out)创建一个新的打印流。
PrintStream(OutputStream out, boolean autoFlush)创建一个新的打印流。
PrintStream(OutputStream out, boolean autoFlush, String encoding)创建一个新的打印流。
PrintStream(String fileName)使用指定的文件名创建新的打印流,无需自动换行。
PrintStream(String fileName, String csn)创建一个新的打印流,不需要自动换行,具有指定的文件名和字符集。
注意:因为PrintStream继承自OutputStream所以,OutputStream的方法PrintStream也能调用,但在使用write()方法时,如果使用则会去查询编码表来进行字符转化比如97---会打印a,但如果使用自己的print()方法则97---就打印97,原来时什么样就原样输出
示例:
//1.创建PrintStream对象
PrintStream ps=new PrintStream("filePath");
//2.使用输出方法
ps.write(97);//输出a
ps.print(97);//输出97
改变系统输出目的地
public class IO_PrintStream {
public static void main( String[] args ) {
System.out.println("打印流的位置,从控制台输出改为输出到PrintStream");
changeOut();
}
private static void changeOut() {
try (
PrintStream ps = new PrintStream("./src/JavaCore/IO/PS.txt")
) {
//将打印目的地修改到PrintStream
System.setOut(ps);
System.out.println("打印到PrintStream-----");
} catch (IOException E) {
System.out.println(E);
}
}
}
本博客为Swagger-Ranger的笔记分享,文章会持续更新
文中源码地址: https://github.com/Swagger-Ranger
欢迎交流指正,如有侵权请联系作者确认删除: liufei32@outlook.com
posted on 2019-04-14 22:08 Swagger-Ranger 阅读(237) 评论(0) 编辑 收藏 举报