欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Reader:字符输入流

程序员文章站 2024-03-06 16:08:02
...

API介绍:
Reader:字符输入流
解析:Reader类是支付方输入流的根,是一个类的抽象,其子类必须重写read()和close方法。
功能方法:
Reader:字符输入流
FileReader类
API介绍:
Reader:字符输入流

解析:FileReader类是读取字符文件的方便类,方便体现在两点,首先有默认字符编码表(与操作系统编码表一致),第二有默认换字符缓冲区大小。如果需要指定该两点,需要使用InputStreamRead类。
构造方法:Reader:字符输入流

public class Demo16 {
    public static void main(String[] args) throws FileNotFoundException {
        FileReader in = new FileReader("文件地址");
        System.out.println(in);//输出对象地址。
        File file = new File("文件地址");
        FileReader in2 = new FileReader(file);
        System.out.println(in2);//输出对象地址

    }
}

功能方法(与read类功能一致)

public class Demo17 {
    public static void main(String[] args) throws IOException {
        FileReader in = new FileReader("文件地址");
        int c =in.read();
        System.out.println(c);
        char [] cs = new char[1024];
        int len =-1;
        while((len=in.read(cs))!=-1){
            System.out.println(new String(cs,0,len));
            //一堆一堆字符某部分(少用)
            char [] ch = new char[1024];
            int leng = -1;
            while((leng=in.read(ch,1,2))!=-1){
                System.out.println(new String(ch,1,2));
            }
            in.close();
        }
    }
}

字符输入流实现文件复制操作:
Reader:字符输入流
文件文本:

public class Demo18 {
    public static void main(String[] args) throws IOException {
        FileReader in = new FileReader("文件地址");
        FileWriter out = new FileWriter("需要复制的到的地址");
        //2、FileReader 字符读取
        //2、FileReader 字符读取
//        int c = -1;
//        while ((c = in.read()) != -1) {
//            //3、FileWriter 字符写入
//            out.write(c);
//
        
        char [] chs = new char[1024];
        int len = -1;
        while((len=in.read(chs))!=-1){
            out.write(chs,0,len);
        }

        System.out.println("复制成功!");
    }
}

注;非文本文件无法复制非文本文件,会导致文件损坏。