java中文件打开和关闭的问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中文件打开和关闭的问题相关的知识,希望对你有一定的参考价值。

编译完运行程序,文件被打开进行了一些操作后,代码中没有编写关闭文件的语句。那么当程序结束退出后,这个文件是否自动被关闭?还是依然保持着打开状态??

JVM退出时会释放所有文件的句柄,这个文件当然是被自动关闭了;如果你在写入文件后,没有及时调用flush(),写入的内容不会刷入磁盘,就丢失了. 参考技术A 根据我的编程经验,也会遇到文件忘记close的情况,我来说一下我在这种情况下发生了什么问题。我打开一个文件,往里面写东西,如果忘了关闭,在buffer中的内容不会写到文件里面去,也就是有时候明明已经写入内容了,当你打开文件看了下发现会少掉了一部分。而如果在程序推出前close了文件流,则不会发生这种情况。所以文件用完了无论是读写都要养成关闭的好习惯,希望我的回答能够帮到你。 参考技术B 可以通过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流会一直存在,直到程序运行结束。
参考技术C 自己搞个测试就行了,有没被释放,删除一下文件,删不了就没被释放嘛

java如何关闭当前窗口打开新的窗口

新的窗口的打开,和打开第1个窗口一样,new 、setVisible

关闭当前的,可以使用dispose
参考技术A 直接调用新窗口的setVisible(false);方法就可以了。本回答被提问者和网友采纳

以上是关于java中文件打开和关闭的问题的主要内容,如果未能解决你的问题,请参考以下文章

如何关闭和打开JAVA

如何关闭和打开JAVA

尝试使用反编译的应用程序文件打开应用程序 [关闭]

java io流(字符流) 文件打开读取文件关闭文件

关于java中io流的关闭问题,部分代码,这种情况用不用关闭new FileReader(file)?

Java登录窗口关闭 打开新窗口