带缓存的输入输出-bufferedinputstream类与bufferedoutputstream类

 1 package hengzhe.cn.o1;
 2 
 3 import java.io.*;
 4 
 5 /*
 6  * 带缓存的输入输出-bufferedinputstream类与bufferedoutputstream类
 7  * 与。net的cache是一样为缓存,有了这个就可以在流中实现skip(),mark(),reset()等方法
 8  * bufferedinputstream可以对inputstream类进行带缓存的包装以达到性能的优化。
 9  * 有两个构造函数BufferdInputStream(InputStream in)、和BufferdInputStream(InputStream in,int size)
10  * 其中第一种是指定32个字节的缓存流,第二个就不得了,可以根据机器的配置自行指定
11  * BufferdoutputStream和outputStream一样,只不过有个flush()方法用来将缓存强行输出,该方法也有两个构造函数:
12  * BufferdOutPutStream(OutPutStream in)、和BufferdOutPutStream(OutPutStream in,int size)
13  * 其中第一种是指定32个字节的缓存流,第二个就不得了,可以根据机器的配置自行指定
14  * 注:flush()方法就是将缓存区里的数据强行排空,只对OutPutStream有效
15  * BufferedReader类常用的方法如下:
16  * read()、readLine(),write(string s ,int off,int len):写放字条的某一部分、flush()刷新缓存、newLine()写入一行分隔符
17  */
18 public class Buffered
19 {
20 
21     public static void main(String[] args)
22     {
23         String content[] =
24         { "白日依", "山尽", "黄河入", "海流" };
25         File file = new File("e:java.txt");
26         try
27         {
28             FileWriter fw = new FileWriter(file);
29             BufferedWriter bufw = new BufferedWriter(fw);
30             for (int i = 0; i < content.length; i++)
31             {
32                 bufw.write(content[i]);// 写入文件
33                 bufw.newLine();// 以单行写入文件
34 
35             }
36             bufw.close();
37             fw.close();
38 
39         } catch (Exception e)
40         {
41             e.printStackTrace();
42         }
43 
44         // read
45         try
46         {
47             FileReader fr = new FileReader(file);
48             BufferedReader bufr = new BufferedReader(fr);
49             String str_info = null;
50             int i = 0;
51             while ((str_info = bufr.readLine()) != null)
52             {
53                 i++;
54                 System.out.println("第" + i + "行:" + str_info);
55 
56             }
57             bufr.close();
58             fr.close();
59 
60         } catch (Exception ex)
61         {
62             ex.printStackTrace();
63 
64         }
65     }
66     /*
67      * */
68 
69 }

原文地址:https://www.cnblogs.com/c546170667/p/5866670.html