【发布时间】:2018-09-07 21:34:52
【问题描述】:
我已经在 try/finally 中关闭了文件 steam,但代码分析警告我:
- 可能无法关闭 FileOutputStream
- 可能无法关闭 PrintWriter
- 可能无法关闭 OutputStreamWriter
失败怎么会发生?如何确保 FileStream 已关闭?
public void writeFile(String filepath)
{
BufferedWriter bw = null;
PrintWriter pw = null;
try {
File file = new File(filepath);
bfw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file), "UTF-8"));
pw = new PrintWriter(bfw);
//do something
}catch(Exception e){
e.printStackTrace();
}
finally{
try{
bfw.close();
pw.close();
}catch(Exception e){
e.printStackTrace();
}
}
}
【问题讨论】:
标签: java filestream resource-leak