从文本文件中读取数据时,通常会创建一个FileReader
,然后嵌套在BufferedReader
中。读完后我应该关闭哪两位读者?有关系吗?关闭嵌套阅读器
FileReader fr = null;
BufferedReader br = null;
try
{
fr = new FileReader(fileName);
br = new BufferedReader(fr);
// ...
}
finally
{
// should I close fr or br here?
}
对于异常安全,我有点偏执。 BufferedReader
构造函数抛出异常时会发生什么?它是否关闭嵌套的阅读器?还是保证不扔?
+1。比我的解决方案更优雅。 – 2011-02-05 21:03:08