天天看點

IO流的異常處理

在IO流的異常處理時應該注意以下幾點:

1.在外邊建立引用,在Try内進行初始化(FileWriter fw = null;)

2.檔案的路徑使用必須是雙斜杠,轉義(fw = new FileWriter("D:\\NewFile.txt");)

3.在進行流關閉之前必須先對流進行判斷,如果不進行判斷,那麼将會出現以下錯誤

IO流的異常處理

出現上述錯誤的原因是:

由于系統路徑不存在,是以沒有建立流對象,在申明時流對象為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());
            }

        }        

    }
}