0425-字符输入流FileReader

package A10_IOStream;

import java.awt.datatransfer.StringSelection;
import java.io.IOException;
import java.io.FileReader;
/*
java.io.Reader:字符输入流,字符输入流的顶层抽象父类
共性方法
    int read() 读取单个字符并返回
    int read(char[] cbuf) 一次读取多个字符,将字符读入数组
    void close() 关闭该流并释放预支关联的所有资源

java.io.FileReader:文件字符输入流,继承自InputStreamReader继承自Reader
作用:
    把硬盘文件的数据以字符的方式读取到内存中
构造方法:
    FileReader(String fileName) 根据指定文件构建
    FileReader(File file) 根据一个File对象构建
构造方法的作用:
    创建一个FileReader对象,把FileReader对象指向要读取的文件
*/
public class D04_FileReader {
    public static void main(String[] args) throws IOException {
        //单个字符读取
        FileReader fr = new FileReader("test.txt");
        int len=0;
        while ((len=fr.read())!=-1){
            System.out.print((char)len);
        }
        System.out.println(""); //输出一个空行便于区分下面的结果
        fr.close();
        //多个字符读取
        FileReader fr2=new FileReader("test.txt");
        char[] buff=new char[1024];
        len=0;
        while ((len=fr2.read(buff))!=-1){
            System.out.print(new String(buff,0,len)); //使用String的构造函数 String(char[] c)
        }
        fr2.close();
    }
}

 

posted @ 2020-04-25 11:48  lybingyu  阅读(109)  评论(0编辑  收藏  举报