gpt4 book ai didi

java - 关于java文件关闭

转载 作者:行者123 更新时间:2023-11-30 05:59:50 25 4
gpt4 key购买 nike

我注意到在一个java程序中,下面的行用于打开文件并处理它

BufferedReader inp = new BufferedReader(new FileReader(inputFile));

在java程序中,退出程序之前未关闭inp,缺少以下行

if (inp != null)
try {
inp.close();
} catch (IOException logOrIgnore) {}

程序在很多地方退出,但没有关闭文件。我需要把这条线到处放吗?如果我在程序退出时不关闭文件,这将是一个问题。垃圾收集器是否关闭文件?

最佳答案

您应该使用try/finally:

Reader inp = new BufferedReader(new FileReader(inputFile));
try {
// Do stuff with "inp"
} finally {
IOUtils.closeQuietly(inp);
}

IOUtils 来自 Apache Commons IO 。它的 closeQuietly 方法就像上面的代码片段:它调用 close,并忽略抛出的任何异常。

关于java - 关于java文件关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2384191/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com