Java流操作有关的类或接口:
Java流类图结构:
上图过于繁琐,很多用不到。附简图一张~~~
IO流:用于处理设备上的数据
设备:硬盘,内存,键盘录入~~~
IO具体分类:1.根据处理的数据类型不同:字节流,字符流
2.根据流向不同:输入流,输出流
字符流的由来:因为文件编码的不同,而有了对字符进行高效操作的字符流对象
原理:基于字节流读取字节时,去查了指定的码表
字节流字符流的区别:
1.字节流读取的时候,读到一个字节就返回一个字节。
字符流使用了字节流读到一个或者多个字节(中文对应的字节数是两个,在UTF-8码表中是3个字节)时。先去查看指定的码表,将查到的字符返回。
2.字节流可以处理所有类型的数据,如图片,mp3,avi
而字符流只能处理字符数据。
结论:只要是纯文本数据,就优先考虑使用字符流,除此之外都用字节流。