首页 > 代码库 > java 21 - 12 IO流的打印流
java 21 - 12 IO流的打印流
打印流
字节流打印流 PrintStream
字符打印流 PrintWriter
打印流的特点:
A:只有写数据的,没有读取数据。只能操作目的地,不能操作数据源。(只能写入数据到文件中,而不能从文件中提取数据)
B:可以操作任意类型的数据。
C:如果启动了自动刷新,能够自动刷新。
D:该流是可以直接操作文本文件的。
哪些流对象是可以直接操作文本文件的呢?
FileInputStream
FileOutputStream
FileReader
FileWriter
PrintStream
PrintWriter
看API,查流对象的构造方法,如果同时有File类型和String类型的参数,一般来说就是可以直接操作文件的。
流如果按操作分:
基本流:就是能够直接读写文件的
高级流:在基本流基础上提供了一些其他的功能
作为Writer的子类使用:
1 public static void main(String[] args) throws IOException { 2 // 作为Writer的子类使用 3 PrintWriter pw = new PrintWriter("pw.txt"); 4 5 pw.write("hello"); 6 pw.write("world"); 7 pw.write("java"); 8 9 pw.close();10 }
打印流的特点:
1:可以操作任意类型的数据。
print()
println()
2:启动自动刷新
PrintWriter pw = new PrintWriter(new FileWriter("pw2.txt"), true);
还是应该调用println()的方法才可以
这个时候不仅仅自动刷新了,还实现了数据的换行。
这里的println()
其实等价于于:
bw.write();
bw.newLine();
bw.flush();
PrintWriter实现自动刷新和自动换行:
1 public static void main(String[] args) throws IOException { 2 // 创建打印流对象 3 PrintWriter pw = new PrintWriter(new FileWriter("pw2.txt"), true); 4 5 pw.println("hello"); 6 pw.println(true); 7 pw.println(100); 8 9 pw.close();10 }
java 21 - 12 IO流的打印流