IO流之Writer和Reader
何为IO流?
种类划分: ① 流向划分:
输入流:InputStream、Reader
输出流:OutputStream、Writer
② 处理数据的不同分类:
字节流:InputStream、OutputStream
字符流:Reader、Writer
今天先说说Writer和Reader
Reader读入(硬盘->内存)
Reader为抽象类,需利用其子类创建对象(FileReader)
例如:Reader r = new FileReader(文件路径);
读取方法:
第一种方式:读取单个字符 int read() 读取单个字符,一个个的读,返回值是字符本身(ACSII);当read()返回-1证明文件内容已经读完
第二种方式:int read(char[ ] arr) 将字符读入数组,返回读取的字符数量,若已经读完,则返回-1,将从文件读取的数据存入char数组中,一般char数组的长度通常定义为1024
Writer写出(内存->硬盘)
Writer同Reader相似,同为抽象类,因此同样可以借用子类创建对象
例如:Writer w = new FileWriter(文件路径);
注:再进行写的操作的时候,即w.write()方法时,用完该方法最好刷新一下流,即w.flush(),否则流中的数据会有损失;关流操作的close()方法会在执行关流操作之前执行一次flush()方法