IO流的异常处理

在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());
            }
            
        }        

    }
}
原文地址:https://www.cnblogs.com/OliverQin/p/5042608.html