/** * 字符输入流Reader * 概述:java.io.Reader抽象类是所有字符输入流的父类,可以用来读取字符数据到内存中 * 常用方法: * read * close */
public class Test2 {
public static void main(String[] args) throws IOException {
/**
* FileReader类
* 概述:java.io.FileReader类是Reader抽象类的子类
*/
FileReader fileReader = new FileReader("IO流\\aaa\\1.txt");
//读取字符的方法一
/*int i = 0;
while ((i=fileReader.read())!=-1){
System.out.println((char) i);
}*/
//方法二
char[] chars = new char[1024];
int j = 0;
//返回读到的字符个数fileReader.read(chars)
while ((j = fileReader.read(chars))!=-1){
System.out.println(new String(chars,0,j));
}
fileReader.close();
}
}
/** *字符输出流 * 概述:java.io.Writer抽象类是所有字符输出流的父类,可以用来写字符数据到文件中 * 常用方法: * write * close * flush刷新 */
注意:字符输出流,由于缓冲区的原因,如果不关闭流或者不强制刷新,那么字符是不会写入到文件当中。
public class Test3 {
public static void main(String[] args) throws IOException {
/**
* FileWriter继承Writer,所以也可以表示为字符输出流,写入字符到文件当中
* 注意事项:
* 1,如果关联的目的地文件不存在,那么系统会自动创建一个文件
* 2.如果存在,那么系统会清空原文件的数据
*/
//FileWriter构造方法第二个参数可以表示是否为追加
FileWriter fileWriter = new FileWriter("IO流\\aaa\\1.txt", true);
fileWriter.write("这是一个追加的字符串");
fileWriter.flush();
fileWriter.close();
}
}