- FileWriter fw = new FileWriter("test.txt");
- for (int i = 0; i < 10*1024; i++) {
- fw.write('a');
- }
- Thread.sleep(20000);
- /*
- * 趁线程睡觉的20秒钟时间,我到文件夹打开test.txt一看,已经有8192字节的数据了,此时fw还没有close.
- * 这是否说明FileWriter类的内部已经有一个8129字节的缓冲区?
- * 如果是这样,那么使用缓冲区大小小于8k的BufferedWriter还有意义吗?
- */
- fw.close();
- /*
- *而且,在毕老师的视频里,我见到如下的代码片段:(出于简便,没有做异常处理)
- */
- BufferedReader bufr = new BufferedReader(new FileReader("a.txt)"));
- BufferedWriter bufw = new BufferedWriter(new FileWriter("b.txt"));
- String line = null;
- while((line=bufr.readLine())!=null){
- bufw.write(line);
- bufw.newLine();
- bufw.flush();//每新增一行就刷掉缓冲区,这样是否有违缓冲区的初衷?
- }
复制代码 |
|