我正在开发一个我正在使用RandomAccessFile的项目。我遇到的最大问题是,即使我在访问文件后关闭文件,文件也不会关闭,直到整个应用程序退出。这是标准行为还是有人知道发生了什么?代码基本上看起来像:

RandomAccessFile raf = new RandomAccessFile(f);
//do stuff
raf.close();

我使用RandomAccessFile的两个部分都是这样的(即我100%确定我在文件上调用close。)

有帮助吗?

解决方案

你想确保你的关闭在像这样的块中

RandomAccesFile raf = null;
try {
    raf = new RandomAccessFile(f);
    //do stuff
} finally {
   if (raf != null) {
      raf.close();
   }
}

否则异常会导致close()永远不会被执行。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top