テキスト ファイルから読み取る場合、通常は を作成しFileReader
、それを にネストしBufferedReader
ます。読み終わったら、2 つのリーダーのどちらを閉じる必要がありますか? それは問題ですか?
FileReader fr = null;
BufferedReader br = null;
try
{
fr = new FileReader(fileName);
br = new BufferedReader(fr);
// ...
}
finally
{
// should I close fr or br here?
}
例外安全性に関しては、私は少し妄想的です。BufferedReader
コンストラクターが例外をスローするとどうなりますか? ネストされたリーダーを閉じますか? それとも、投げないことが保証されていますか?