天天看點

Java IO - FileReader&FileWriter

基本概念

  • 字元檔案操作流(FileReader/ FileWriter),本身不做任何具體實作,所有操作都是通過字元位元組轉換流進行轉換後再調用位元組檔案操作流(FileInputStream/FileOutputStream)來完成。

源碼探究

具體探究見 FileInputStream/FileOutputStream。

1.FileReader

public class FileReader extends InputStreamReader {

    public FileReader(String fileName) throws FileNotFoundException {
        super(new FileInputStream(fileName));
    }

    public FileReader(File file) throws FileNotFoundException {
        super(new FileInputStream(file));
    }

    public FileReader(FileDescriptor fd) {
        super(new FileInputStream(fd));
    }

}
           

2.FileWriter

public class FileWriter extends OutputStreamWriter {

    public FileWriter(String fileName) throws IOException {
        super(new FileOutputStream(fileName));
    }

    public FileWriter(String fileName, boolean append) throws IOException {
        super(new FileOutputStream(fileName, append));
    }

    public FileWriter(File file) throws IOException {
        super(new FileOutputStream(file));
    }

    public FileWriter(File file, boolean append) throws IOException {
        super(new FileOutputStream(file, append));
    }

    public FileWriter(FileDescriptor fd) {
        super(new FileOutputStream(fd));
    }

}