Java 字符流(Reader和Writer)

104 阅读1分钟

要点

字符流用于文本文件的。

使用方法

  • 常用Reader的实现类FileReader构造方法FileReader(String(Flie)),构造参数的想要读取的目标文件, 其中的read()方法以char(字符)为单位读取的,一次读一个字符,返回值也是整数,
  • FileWriter构造方法FileReader(String(Flie)),构造参数是写入到硬盘的位置, 其中的方法write()有两种常用用法:
    1. write(char[] ch),直接把char数组写入到硬盘。
    2. write(String str),直接把字符串写入硬盘
    3. write()方法会先把数组写人内存缓冲区(字符变字节),所以需要flush()方法,把数据从缓冲区写入硬盘,然后再close();
      注:

使用输出流write()时,是否续写需要在在创建Writer对象时,FileReader(String(Flie),Boolean b), b=true表示续写,不会覆盖原本的内容。(续写和换行与字节流一模一样)

用例

import java.io.FileWriter;
import java.io.IOException;

public class Reader_Writer {
    public static void main(String[] args) throws IOException {
        File file = new File("D:\\JavaSE\\基础语法\\src\\com\\javaSE\\CommonAPI\\a.txt");
        FileReader fileR = new FileReader(file);
        int re = 0;
        //char[] ch = new char[1024];
        while ((re = fileR.read())!=-1 ){//读取,输入
            System.out.print((char)re);
        }
        FileWriter fileW =new FileWriter(file,true);
        fileW.write("sfsfsfd");//写入,输出
        fileW.flush();

    }
}