【Java】FileReader / FileWriter

這一篇中會說明 FileReader 讀檔與 FileWriter 寫檔的基本用法。


FileWriter


FileWriter is meant for writing streams of characters. For writing streams of raw bytes, consider using a FileOutputStream.

如果你要寫的是一般文字檔,可以直接用 FileWriter
但是你要寫入的是 Raw bytes,就要用 FileOutputStream
這邊先說明 FileWriter 的用法。

付上簡單的寫檔 function
    public void writeFile(String path, String content)
    {
        try
        {
            FileWriter writer = new FileWriter(path);
            // Override
            // FileWriter writer = new FileWriter(path, true);
            writer.write(content);
            writer.close();
        }
        catch (IOException e)
        {
            e.printStackTrace();
        }
    }


這邊所使用的是第一個 Constructor,每次寫檔的時候都會把之前的資料覆蓋掉
FileWriter(String fileName)

如果使用第二個 Constructor,並且把 append 設成 true,會接著先前的檔案繼續往下寫。
FileWriter(String fileName, boolean append)


FileReader


FileReader is meant for reading streams of characters. For reading streams of raw bytes, consider using a FileInputStream.

一樣如果讀的是一般文字檔,就用 FileReader
如果是 Raw bytes,就用 FileInputStream
這邊也先說明 FileReader 的用法。

付上簡單的讀檔 function
    public void readFile(String path)
    {
        try
        {
            FileReader reader = new FileReader(path);
            int letter;
            while ((letter = reader.read()) != -1)
                System.out.print((char) letter);
            reader.close();
        }
        catch (IOException e)
        {
            e.printStackTrace();
        }
    }


所使用的是第一個 Constructor。
FileReader(String fileName)

好像沒甚麼難度 ~!!
但是卻是很實用的讀寫檔 ~
記得這些只適用於"簡單的文字檔" ~
本篇參考
  1. FileWriter
  2. FileReaeder

留言