Reader不Writer的编码方式
获得当前开发环境的字符编码方式
System.out.println(System.getProperty("file.encoding"));
字符流的读写根据需要设置编码方式
涉及到的类: 读:FileReader (File file)
写:FileWriter(File file)
加入缓冲区的读:BufferedReader(Reader fr)
加入缓冲区的写:BufferedWriter(Writer bw)
Reader与Writer的编码方式
调用顺序与编码顺序相反 ,所以创建类的依次顺序为 FileInputStream, InputStreamReader,
BufferedReader。
标准的输入输入出流System.in,System.out
键盘录入《虞美人》古诗写入文件
代码案例:
public static void main(String[] args) throws IOException {
BufferedReader bufferedReader=new BufferedReader(new InputStreamReader(in));
BufferedWriter bufferedWriter=new BufferedWriter(new FileWriter("1.txt"));
out.println("请输入诗歌");
String s=bufferedReader.readLine();
while (!s.equals("no")){
bufferedWriter.write(s);
bufferedWriter.newLine();
s=bufferedReader.readLine();
}
bufferedReader.close();
bufferedWriter.close();
}
总结1
流操作的基本规律
1、明确源和目的
源:输入流
InputStream,
Reader
目的:输出流 OutputStream, Writer
2、操作的数据是纯文本 使用字符流 Reader,Writer 。操作的数据不是纯文本:使用字节流
InputStream,OutputStream
3、具体的操作设备
源设备:内存,硬盘,键盘
目的设备:内存,硬盘,控制台
总结2
文本操作:FileReader, FileWriter
字符操作:FileInputStream,FileOutputStream
基本数据类型操作:DataInputStream, DataOutputStream
操作对象: ObjectInputStream ,ObjectOutputStream