JAVA基础:文件字符流
目录
前言
文件字符流的创建
文件字符流的使用
前言
上一篇我们知道了如果在使用输入流读取数据时,数据中含有中文就会出现乱码的情况,这时就要使用字节字符转换流这个过程流来处理一下,针对这种情况我们可以直接使用文件字符流来读取数据
文件字符流的创建
FileReader r = new FileReader("c:/z/1.txt") ;
FileWriter w = new FileWriter("c:/z/1.txt") ;
FileReader是一个字符输入流
FileWriter是字符输出流
他们和FileInputStream类似都是直接读写文件,FileInputStream是以字节的形式读取,它们俩是以字符的形式读取
他们的作用看起来和字符字节转换流是一样的,其实在底层FileReader就是继承的InputStreamReader,只不过字节字符转换流需要先创建文件字节输入输出流这个节点流和数据进行交互,再通过字节字符转换流这个过程流处理数据,使用文件字符流代码看起来更加简洁文件字符流本质上就是字符转换流
文件字符流是一个过程流,但是他在编码上看起来能直接和数据源进行接触,其实在文件字符流的底层也是使用了文件字节输入输出流和数据源进行交互的还是文件字节输入输出流
文件字符流的使用
文件字符流在使用上和前面的基本一致,它使用的方法叫read,用来读数据。使用read方法读到的数据是字符类型不是字节类型
使用write方法写数据,可以写字符数据,也可以写单个字符,也可以写字符串
其他的操作就和之前完全一致了