为了账号安全,请及时绑定邮箱和手机立即绑定

Close();文件关闭语句加上后有什么区别?

Close();文件关闭语句加上后有什么区别?

拉莫斯之舞 2019-04-04 15:07:09
Close();文件关闭语句加上后有什么区别?
查看完整描述

4 回答

?
慕桂英546537

TA贡献1848条经验 获得超10个赞

using 有几种用法,其中一种指释放资源 如同tw.Close()一样.只有某个对象继承了Dispo..这样接才需释放资源,如果有时不行,希望你设置个断点调试一下,这样才有助你找到问题所在.

查看完整回答
反对 回复 2019-04-09
?
泛舟湖上清波郎朗

TA贡献1818条经验 获得超3个赞

可以通过BufferedReader 流的形式进行文件流的大卡,之后通过readLine方法获取到流的内容,之后通过close方法关闭流(关闭文件流)。
BufferedReader bre = null;
try {
String file = "D:/test/test.txt";
bre = new BufferedReader(new FileReader(file));//此时获取到的bre就是整个文件的缓存流
while ((str = bre.readLine())!= null) // 判断最后一行不存在,为空结束循环
{
System.out.println(str);//原样输出读到的内容
};
备注: 流用完之后必须close掉,如上面的就应该是:bre.close(),否则bre流会一直存在,直到程序运行结束。

查看完整回答
反对 回复 2019-04-09
?
缥缈止盈

TA贡献2041条经验 获得超4个赞

JVM退出时会释放所有文件的句柄,这个文件当然是被自动关闭了;如果你在写入文件后,没有及时调用flush(),写入的内容不会刷入磁盘,就丢失了.

查看完整回答
反对 回复 2019-04-09
?
慕尼黑5688855

TA贡献1848条经验 获得超2个赞

根据我的编程经验,也会遇到文件忘记close的情况,我来说一下我在这种情况下发生了什么问题。我打开一个文件,往里面写东西,如果忘了关闭,在buffer中的内容不会写到文件里面去,也就是有时候明明已经写入内容了,当你打开文件看了下发现会少掉了一部分。而如果在程序推出前close了文件流,则不会发生这种情况。所以文件用完了无论是读写都要养成关闭的好习惯,希望我的回答能够帮到你。

查看完整回答
反对 回复 2019-04-09
  • 4 回答
  • 0 关注
  • 1229 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信