JavaSE-19.2.2【IO特殊操作流之标字节打印流、字符打印流】

 1 package day10.lesson2;
 2 
 3 import java.io.FileWriter;
 4 import java.io.IOException;
 5 import java.io.PrintStream;
 6 import java.io.PrintWriter;
 7 
 8 /*
 9 2.3 字节打印流
10 
11     打印流分类
12         字节打印流:PrintStream
13         字符打印流:PrintWriter
14     打印流的特点
15         只负责输出数据,不负责读取数据
16         永远不会抛出IOException
17         有自己的特有方法
18     字节打印流
19         PrintStream(String fileName)
20             使用指定的文件名创建新的打印流
21             使用继承父类的方法写数据,查看的时候会转码;使用自己的特有方法写数据,查看的数据原样输出
22             可以改变输出语句的目的地
23         public static void setOut(PrintStream out)
24             重新分配“标准”输出流
25 
26 2.4 字符打印流
27 
28     构造方法
29         PrintWriter(String fileName)
30             使用指定的文件名创建一个新的PrintWriter,而不需要自动执行刷新
31         PrintWriter(Writerout, boolean autoFlush)
32             创建一个新的PrintWriter out:字符输出流 autoFlush:
33             一个布尔值,如果为真,则println , printf ,或format方法将刷新输出缓冲区
34  */
35 public class PrintStreamAndPrintWriterDemo {
36     public static void main(String[] args) throws IOException{
37         methodPrintStream();
38         methodPrintWriter();
39     }
40 
41     private static void methodPrintStream() throws IOException {
42         PrintStream ps = new PrintStream("stage2\\src\\day10\\lesson2\\ps.txt");
43 
44         //字节输出流的方法
45         ps.write(97); //a
46         ps.write(98); //b
47 
48         //PrintStream特有方法
49         ps.println();
50         ps.println(97); //97
51         ps.println(98); //98
52 
53         ps.close();
54     }
55 
56     private static void methodPrintWriter() throws IOException{
57 //        PrintWriter pw = new PrintWriter("stage2\\src\\day10\\lesson2\\pw.txt");
58 
59         /*pw.write("hello\n");
60         pw.flush();
61         pw.write("world\n");
62         pw.close();*/
63 
64         /*pw.println("hello");
65         pw.flush();
66         pw.println("world");
67         pw.close();*/
68 
69         PrintWriter pw = new PrintWriter(new FileWriter("stage2\\src\\day10\\lesson2\\pw.txt"), true);
70         pw.println("hello");
71         //构造方法第二个参数设置为true --> 自动刷新;false时不能自动刷新,需要手动.flush()
72         pw.println("world");
73         pw.close();
74         //三种方式中,推荐使用这种
75     }
76 
77 }

 

posted @ 2021-06-08 12:27  yub4by  阅读(48)  评论(0编辑  收藏  举报