流的标准异常处理jdk1.6版本及其以前
FileInputStream fis = null;
FileOutputStream fos = null;
try {
fis = new FileInputStream("aaa.txt");
fos = new FileOutputStream("bbb.txt");
int b;
while((b = fis.read()) != -1) {
fos.write(b);
}
} finally {
try {
if(fis != null)
fis.close();
}finally {
if(fos != null)
fos.close();
}
}
流的标准异常处理jdk1.7版本
try(
FileInputStream fis = new FileInputStream("aaa.txt");
FileOutputStream fos = new FileOutputStream("bbb.txt");
){
int b;
while((b = fis.read()) != -1) {
fos.write(b);
}
}
原理:在try()中创建的流对象必须实现AutoCloseable接口,如果实现了,在try后面的{}(读写代码)执行后就会自动调用流对象的close方法将流关掉