在IO流的异常处理时应该注意以下几点:
1.在外边建立引用,在Try内进行初始化(FileWriter fw = null;)
2.文件的路径使用必须是双斜杠,转义(fw = new FileWriter("D:\NewFile.txt");)
3.在进行流关闭之前必须先对流进行判断,如果不进行判断,那么将会出现以下错误
出现上述错误的原因是:
由于系统路径不存在,所以没有创建流对象,在申明时流对象为null,所以报错
错误代码片:
/* IO异常的处理方式。 */ import java.io.*; class FileWriterTry { public static void main(String[] args) { FileWriter fw = null; try { fw = new FileWriter("Z:\NewFile.txt"); fw.write("数据已经写入文件"); } catch (IOException e) { System.out.println("catch:"+e.toString()); } finally { try { fw.close(); } catch (IOException e) { System.out.println(e.toString()); } } } }
正确的异常处理代码片:
/* IO异常的处理方式。 */ import java.io.*; class FileWriterTry { public static void main(String[] args) { FileWriter fw = null; try { fw = new FileWriter("D:\NewFile.txt"); fw.write("数据已经写入文件"); } catch (IOException e) { System.out.println("catch:"+e.toString()); } finally { try { if(fw!=null) fw.close(); } catch (IOException e) { System.out.println(e.toString()); } } } }