救急!!!!各位高手!

wxyxl 2001-03-26 06:33:00
我有个问题不明白!就是我在编写处理文件的程序的时候,我建立了两个句柄一个用于读文件,一个用于写文件。这两个句柄都是建立在一个文件上的。如下
........
BufferedReader in = new BufferedReader(new FileReader("t.txt"));
BufferedWriter out = new BufferedWriter(new FileWriter("t.txt",true));
.......
out.write("Hello World");
.....
while(in.read(cha)!=-1)
System.out.println(new String(cha));
.....
结果文件里的内容是打印出来了,可是“Hello World”却没打出来,为什么我已经向文件里面写了东西了,他的结束标志还不改变?是不是每打开一个文件只是打开文件的副本,而没有真正的指向那个文件的地址啊?
谢谢!!!
...全文
78 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
wxyxl 2001-03-26
  • 打赏
  • 举报
回复
谢谢 wwwlgy 和 skyyoung ,真的调用flush就可以了,看样子我得好好研究一下这方面的问题!再次谢谢你们两位了!
wxyxl 2001-03-26
  • 打赏
  • 举报
回复
我的读和写在两个分开的线程里面。而且两个线程同时运行,读线程一次读一个字符,写线程一次写一个字符!不可能写一个字符就关闭吧!我真的还是不懂!
breeze的一切 2001-03-26
  • 打赏
  • 举报
回复
是一下用flush把缓存写入文件
skyyoung 2001-03-26
  • 打赏
  • 举报
回复
要close才行。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧