鱼C论坛

 找回密码
 立即注册
查看: 1998|回复: 1

求助!关于Java的I/O流的缓冲区问题

[复制链接]
发表于 2018-11-23 21:12:00 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
  1. import java.io.*;

  2. public class third_1
  3. {
  4.         public static void main(String[] args)
  5.         {
  6.                 try
  7.                 {
  8.                         BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
  9.                         BufferedWriter writer = new BufferedWriter(new FileWriter("mytext1.txt"));
  10.                         BufferedReader reader = new BufferedReader(new FileReader("mytext1.txt"));
  11.                         String inputLine;
  12.                         System.out.println("请开始输入:");
  13.                         while((inputLine = in.readLine()) != null)
  14.                         {
  15.                                 writer.write(inputLine);
  16.                                 writer.newLine();
  17.                         }
  18.                         in.close();
  19.                         System.out.println("文件中写入的数据为:");
  20.                         String outputLine;
  21.                         writer.flush();         //刷新此输出流并强制将所有缓冲的输出字节被写出   
  22.                         while((outputLine = reader.readLine()) != null)
  23.                         {
  24.                                 System.out.println(outputLine);
  25.                         }
  26.                         in.close();
  27.                         writer.close();
  28.                         reader.close();
  29.                 }
  30.                 catch(FileNotFoundException e)
  31.                 {
  32.                         System.err.println("cannot open in.txt");
  33.                 }
  34.                 catch(IOException e)
  35.                 {
  36.                         System.out.println("IOException: " + e);
  37.                 }
  38.                                        
  39.         }
  40. }
复制代码

该程序要实现的功能

该程序要实现的功能

代码这样写时可是实现所要求的的功能,但是在将writer.flush()注释掉以后,输入的内容还可以写到文件中,但是却读不出来,自己查了一下flush()的功能,感觉还是不太理解,这个时候不是已经写入文件了吗,从文件里不可以直接读吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-12-3 13:53:40 | 显示全部楼层
可以换个思路去写一个,用writer和read字节流去写。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-3-29 07:36

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表