IO异常的处理
在实际的开发中我们不能一直将IO异常进行抛出
JDK7前处理
之前的入门练习,我们一直把异常抛出,而实际开发中并不能这样处理,建议使用try…catch…finally代码块,处理异常部分,代码使用演示:
public static void main(String[] args) {
//声明变量
FileWriter fw = null;
try {
//创建流对象
fw = new FileWriter("aa.txt");
//写出数据
fw.write("黑马程序员");
} catch (IOException e) {
e.printStackTrace();
} finally{
try {
if (fw != null) {
fw.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
JDK7的处理
还可以使用JDK7优化后的try-with-resource语句,该语句确保了每个资源在语句结束的时候关闭,所谓资源(resource)是值在程序完成之后,必须关闭的对象。
格式
try(创建流对象语句,如果是多个,使用;隔开){
//读写数据
}catch(Exception e){
e.printStackTrace();
}
private static void show2() {
//创建流对象
try (FileWriter fw = new FileWriter("a.txt")) {
//写出数据
fw.write("黑马程序员");
} catch (IOException e) {
e.printStackTrace();
}
}