<分区>
我有以下代码,它在我的类里面逐行读取文件时效果很好。
try { FileInputStream in = new FileInputStream(filename);
BufferedReader reader=new BufferedReader(new InputStreamReader(in));
String line;
while((line=reader.readLine())!=null){
// read the file
}
}
catch (Exception e) {
System.out.println(e);
}
但是如果我尝试添加命令close,因为在文件完成读取之后,我得到了错误:
in.close();
Error:(131, 9) java: cannot find symbol
symbol: variable in
location: class ReadFile
我搜索了使用后清理对象以及在程序结束前关闭文件的需要。并找到了几篇关于 Java 的帖子,但很多都是非常矛盾的。关键是最后我变得非常困惑。
是我错了,还是 Java 编程有点模糊和困惑?我的意思是,destructor 显然没有实际用途。 , 使用finalize很值得怀疑,close的使用也被认为是不必要的。关于这些问题的一些帖子是矛盾的且没有定论。
那么,这里该如何进行呢?在我真的需要关闭文件的情况下,如何摆脱这个错误信息?关闭文件真的可有可无吗?如何为程序完成清理类实例?