为什么JAVA IO流 局部的每次打开 循环结束后必须要关闭呢

为什么JAVAIO流局部的每次打开循环结束后必须要关闭呢程序是这样的Stringconten=str.substring(c1,c2);System.out.printl... 为什么JAVA IO流 局部的每次打开 循环结束后必须要关闭呢
程序是这样的
String conten = str.substring(c1, c2);
System.out.println(conten);
FileOutputStream fos = new FileOutputStream("E:/wanwanspert/"+(++y)+".txt");
BufferedOutputStream bof = new BufferedOutputStream(fos);
bof.write(conten.getBytes());
bof.close();
fos.close();

如果把 bof.close();
fos.close();
去掉 每次流就不能实现把字符串写进txt 写进去的是空的 只有第一次的有数据

因为我的是循环 每次就第一次的有数据 后面的 因为没关闭流 后面的都是空的

这是为什么吗?
展开
 我来答
zxq778810
2012-01-04 · TA获得超过164个赞
知道答主
回答量:187
采纳率:0%
帮助的人:82.6万
展开全部
flush一下就可以了
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
anrynlee
2012-01-04
知道答主
回答量:24
采纳率:0%
帮助的人:25.7万
展开全部
一楼正解,写完之后flush
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式