字符流概述
概念:
字符流是什么?
1.字符流是可以直接读写字符的IO流。
2.字符流读取字符,就要先读取到字节数据,然后转为字符,如果要写出字符,需要把字符转为字节再写出。
FileReader
1.Read() 可以按照字符大小读取。
FileWriter
Writer()可以自动把字符流转换为字节流写出
字符流的拷贝
是否可以拷贝非文本文件?
1.不可以宝贝非文本文件
因为在读的时候,会将字节转换为字符,在转换过程中,可能找不到对应的字符,就会用?代替,写出的时候会讲字符转换成字节输出。
如果是?,直接写出,这样写出之后的文件就会乱码,看不了。
2.自定义字符数组拷贝。
缓存区
bufferedReader 的 read()方法读取字符时会一次读取若干字符缓冲区,然后逐个返回给程序,降低读取文件的次数,提高效率。
buffereWriter 的 Writer()方法写出字符时会先写到缓冲区,缓冲区写满时才会写到文件,降低写文件的次数,提高效率。
3.readLine()和newLine()方法。
BuffereReader 的 readLine()方法可以读取一行字符()
BuffereWriter 的 newLine()可以输出一个跨平台的换行符号”\r\n“