A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 陈坚 中级黑马   /  2012-4-11 22:52  /  2059 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

FileWriter fw=new FileWriter("Demo.txt");
                fw.write("aa");
                fw.flush();//刷新缓冲区的数据到目的地中
                fw.write("bb");
                fw.flush();
                fw.close();
输出到Demo.txt文件的数据是aabb,我想问一下为什么"bb"不会覆盖原来的"aa"呢?麻烦各位解释一下

3 个回复

倒序浏览

FileWriter fw=new FileWriter("Demo.txt");
                 fw.write("aa");
                 fw.flush();//你刷了缓冲区后,后面没close,没关闭缓冲区的流,所以能继续写进去
           fw.write("bb");
                 fw.flush();
                 fw.close();

回复 使用道具 举报
你的流中途又没有关过,当然不会复写了。
想要复写,可以用下面的代码
FileWriter fw=new FileWriter("d:\\Demo.txt");
            fw.write("aa");
            fw.flush();//刷新缓冲区的数据到目的地中         
        fw.close();
            fw = new FileWriter("d:\\Demo.txt");
            fw.write("bb");
            fw.flush();
            fw.close();
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马