96.FileReader文件字符输入流

FileReader文件字符输入流

【构造方法】

<1>FileReader(String filePath);【构造方法直接传入路径参数】根据指定的文件创建对应的文件字符输入流对象,如果文件不存在,抛出异常:FileNotFountException

<2>FileReader(File file);【构造方法直接传入File类对象】根据指定路径的File类对象创建文件字符输入流对象,如果文件不存在,抛出异常:FileNotFoundException

【成员方法】

<1>int read();从文件读取一个字符数据,返回值为int类型,int类型数据中有且只有低16位是有效数据,如果读取到文件末尾返回-1 EOF End Of File

<2>int read(char[] buf);从文件中读取数据到char类型缓冲数组buf返回值读取到的字符个数;如果读取到文件末尾返回 -1 EOF End Of File

【操作流程】

<1>明确需要读取数据的文件;
<2>创建FileReader对象,打开文件操作管道;
<3>使用FileReader类对象,读取文件数据;
<4>关闭资源;

class Demo10 {
    public static void main(String[] args) throws IOException {
        //创建文件字符输入流对象 【构造方法直接传入路径】
        FileReader fileReader = new FileReader("C:\\Users\\123\\Desktop\\file\\file.txt");
        //创建file类对象
        File file = new File("C:\\Users\\123\\Desktop\\file\\file.txt");
        //创建文件字符输入流对象 【构造方法传入File类对象】
        FileReader fileReader1 = new FileReader(file);
        //read() 方法:从文件中读取一个字符数据,文件末尾返回-1
        int read;
        Byte[] bytes = new Byte[1024*1];
        while ((read = fileReader.read()) != -1){
            System.out.println(read);
        }
        //从文件中读取数据到char类型缓冲数组buf中,返回值是读取到的字符个数;
        //【注意这里是char[]数组,字节流是Byte[]数组】
        char[] chars = new char[1024*1];
        int read1 = fileReader1.read(chars);
        if(read1 != -1){
            System.out.println(new String(chars,0,read1));
        }
        //关闭资源
        fileReader.close();
        fileReader1.close();
    }
}
上一篇:java中IO流


下一篇:js 操作文件