package com.seven.fileReader;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
/**
* 字符流:以字符为单位读取文件=====
* 字节流:以字节为单位读取文件(弊端:中文字符在不同编码标准中占用1-3个字节来存储),使用字节流读取汉字会被拆分成字节,导致读取数据乱码
*注意事项:
* 字符流只能复制有字符编码的文件(文本文件),不能用来复制图片文件,图片文件是二进制的数据流,没有字符编码(utf-8、GBK之类)
*/
public class TestFileReader {
public static void main(String[] args) throws Exception {
FileReader fileReader = new FileReader("d:\\a.txt");
//读取单个字符
// while (true){
// int read = fileReader.read();
// if (read==-1){
// break;
// }
// System.out.print((char) read);
// }
//一次读取多个字符
char[] chars = new char[3];
while (true){
int read = fileReader.read(chars);
if (read==-1) break;
System.out.println(new String(chars,0,read));
}
fileReader.close();
//写入
FileWriter fileWriter = new FileWriter("D:\\test.txt");
fileWriter.write(97);
fileWriter.write("我是中国人");
fileWriter.flush();
fileWriter.close();
System.out.println("end====");//结果是:test.txt内容:a我是中国人
}
}
字符流读写FileReader\FileWriter
最新推荐文章于 2024-09-12 21:04:39 发布