
理解:输入流:就是从硬盘输入到内存(Reader方法:可以理解为将硬盘的东西读到内存中); 输出流:从内存输出到硬盘(write方法:可以理解为写在硬盘内)
Reader(输入流)和Writer(输出流):是抽象类, 要被继承实现
文件字符输入流:

read() 字符流读取方法返回的是一个 编号(对应的ASCII码编号), 想要内容,直接强转(用char)
package com.itheima.d6_char_stream;import java.io.FileNotFoundException;import java.io.FileReader;import java.io.Reader;public class FileReaderDemo01 {public static void main(String[] args) throws Exception {// 目标:每次读取一个字符// 1. 创建一个字符输入流(读)管道与源文件接通Reader fr = new FileReader("file-io-app\\src\\data.txt");// // 2. 读取一个字符返回,没有可读的字符了返回 -1// // public int read(): 读取一个字符的编号返回!读取完毕返回-1// int code = fr.read(); // 返回一个int类型的编号// // 爱 后面是英文字母也能拿 只看字符 不看字节// System.out.println((char) code); // 编号97,转换成字符类型会查ASCII码表,转换成对应的字符//// int code1 = fr.read(); // 读取下一个字符// System.out.println((char) code);// 3. 使用循环读取字符int code;while ((code = fr.read()) != -1){// 读到了文件 用循环将文件的每个字符,逐个打印出来System.out.print((char) code);}}}
