java.io.Reader:用于读取字符流的抽象类,是字符输入流最顶层的父类。
Reader类
共性方法:
- abstract void close() :关闭该流并释放与之关联的所有资源。
- int read() :读取单个字符。
- int read(char[] cbuf) :将字符读入数组。
- abstract int read(char[] cbuf, int off, int len) :将字符读入数组的某一部分。
FileReader类
java.io.FileReader:文件字符输入流
构造方法:
- FileReader(File file) :在给定从中读取数据的 File 的情况下创建一个新 FileReader
- FileReader(String fileName) :在给定从中读取数据的文件名的情况下创建一个新 FileReader。
作用:创建File对象,将FileReader对象指向要读取的文件。1 2 3 4 5 6
FileReader fr = new FileReader("E:\\Down\\1.txt"); int len; while ((len=fr.read())!=-1){ System.out.print((char)len); } fr.clos();
1 2 3 4 5 6 7
FileReader fr = new FileReader("E:\\Down\\1.txt"); int len; char[] chars = new char[1024]; while ((len=fr.read(chars))!=-1){ System.out.println(new String(chars,0,len));//String类的构造方法,将字符数组转换为字符串 } fr.clos();
Writer类
java.io.Writer:写入字符流的抽象类,是字符输出流最顶层的父类。
共性方法: - void write(char[] cbuf) :写入字符数组。
- abstract void write(char[] cbuf, int off, int len) :写入字符数组的某一部分。
- void write(String str): 写入字符串。
- void write(String str, int off, int len) :写入字符串的某一部分。
- abstract void close() :关闭此流,但要先刷新它。
- abstract void flush() :刷新该流的缓冲。
FileWriter
java.io.FileWriter
构造方法: - FileWriter(File file) :根据给定的 File 对象构造一个 FileWriter 对象。
- FileWriter(String fileName) :根据给定的文件名构造一个 FileWriter 对象。
字符输出流的使用步骤(重点):
- 创建FileWriter对象,构造方法中绑定要写入数据的目的地
- 使用FileWriter中的方法write,把数据写入到内存缓冲区当中(字符转换为字节的过程)
- 使用flush方法,把内存缓冲区的数据,刷新到文件中
- 释放资源(会先把内存缓冲区中的数据刷新到文件中);
续写和换行
- FileWriter(String fileName, boolean append) :根据给定的文件名以及指示是否附加写入数据的 boolean 值来构造 FileWriter 对象。
- FileWriter(File file, boolean append) :根据给定的 File 对象构造一个 FileWriter 对象。
boolean append:续写开关,true表示可以续写不会覆盖文件
换行符号:
windows:\r\n
linux:/n
mac:/r
赏
谢谢你请我吃糖果
支付宝
微信