字符流vs字节流
| 区别 | 字节流 | 字符流 |
| 单位 | 字节(byte) | 字符(char) |
| 处理 | 二进制数据 | 文本数据 |
| 类 | InputStream/OutputStream | Reader/Writer |
FileReader读取
FileReader fr = new FileReader("test.txt");
int ch;
while ((ch = fr.read()) != -1) {
System.out.print((char) ch);
}
fr.close();
FileWriter写入
FileWriter fw = new FileWriter("output.txt");
fw.write("Hello World");
fw.close();
BufferedReader/Writer
BufferedReader br = new BufferedReader(
new FileReader("test.txt"));
String line;
while ((line = br.readLine()) != null) {
System.out.println(line);
}
br.close();
小结
- 字符流以字符为单位处理文本
- Reader是字符输入流父类
- Writer是字符输出流父类
- Bufferedxxx提供缓冲和按行读写