前言
太阳的梦谁能懂总有月亮来守候 - - 时间轴
一、字符流
1.字符流写数据的5种方式
字符流=字节流+编码表
五种方法
●刷新和关闭的方法
package Demo02;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class Demo02Writer {
public static void main(String[] args) throws IOException {
FileWriter fw = new FileWriter("E:\\eclipse\\day21_code\\a.txt");
fw.write(97);//需要被写入的字符还在缓存区
fw.write(99);
fw.flush();//需要被写入的字符还在缓存区
fw.write(100);
fw.flush();//需要被写入的字符还在缓存区
fw.write(101);
fw.flush();//需要被写入的字符还在缓存区
fw.close();//如果你只写一个数据,那就可以直接用close。但实际生活中可能要写多次数据
fw.write(101);
//fw.flush();//需要被写入的字符还在缓存区
}
}
2.字符流读数据的2种方式
package Demo02;
import java.io.FileInputStream;
import java.io.FileReader;
import java.io.IOException;
public class Demo02Reader {
public static void main(String[] args) throws IOException {
FileReader fr = new FileReader("E:\\eclipse\\day21_code\\a.txt");
/*
int len = 0;
while((len=fr.read())!=-1) {
System.out.println((char)len);
}
*/
char[] cs=new char[9];
int len=0;
while((len=fr.read(cs))!=-1) {
System.out.println(len);
System.out.println(new String(cs));
}
}
}
```c
package Demo01;
import java.io.FileInputStream;
import java.io.IOException;
public class Demo01InputStream {
public static void main(String[] args) throws IOException {
//创建FileInputStream 对象,构造方法中绑定要读取的数据
FileInputStream fis = new FileInputStream("a.txt");
//使用read方法 读取问
/*int len = fis.read();
System.out.println(len);
len = fis.read();
System.out.println(len);
len = fis.read();
System.out.println(len);*/
byte[] bytes=new byte[8];
int len=0;
while ((len=fis.read())!=-1) {
System.out.println((char)len);
}
//释放资源
fis.close();
System.out.println((char)97);
}
}