FileWriter fw = null;// 不能在try中声明,这样会导致finally中无法只用;
try {
fw = new FileWriter("F:/ppt/text.txt");// 抛出异常的原因:可能找不到文件路径;
fw.write("abcde\nfghijk");// 可能写到坏道,导致写入失败
} catch (Exception e) {
} finally { // 无论程序怎么运行,最后都要关闭流;
if (null != fw) { // 一旦路径有误,fw就会出现空指针异常,所以要先判断fw是否为空
try {
fw.close();// 关闭底层资源时,由于系统故障导致
} catch (IOException e) {
e.printStackTrace();
}
}
}
既有输入流,也有输出流,一定要在finally中,分开关闭。
finally {
if (fr != null) {
try {
fr.close();
} catch (IOException e) {
e.printStackTrace();
}
}
if (fw != null) {
try {
fw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}