楼主的关闭流动作书写有误,如果fw流在关闭的时候出现了异常,就会直接执行catch里的内容,则fr流就关不掉了
需要对这两个关闭流分别try处理
最好这样写:
finally
{
try
{
if(fw!=null)
fw.close();
}
catch (IOException e)
{
throw new RuntimeException("读取流关闭失败");
}
finally
{
try
{
if(fr!=null)
fr.close();
}
catch (IOException e)
{
throw new RuntimeException("写入流关闭失败");
}
}
} |