贾宗虎
1、缓冲流为什么会提高IO流读写的效率?
因为缓冲流在创建对象的时候,有一个内置的缓冲区,可以减少IO的次数
2、我们在读写过程中,什么情况下会发生写入乱码问题?是怎样产生的?我们是如何解决的?
一般是因为文件是用windows下编写的,默认是GBK,在读取的时候,我们默认用UTF-8编码,没有转换编码,产生的乱码
解决: 在读取的时候,用转换流,InputStreamReader,在构造参数中,声明需要的编码格式.
3、请根据自己的语言表述IO流的体系
IO流是以内存来看,从其他设备的数据流向到内存中的数据流向,叫输入流.
从内存流向其他设备的流向,叫输出流.
从数据类型来分,基本流分为:字节流和字符流
字节流可以操作所有的数据类型,因为所有数据在计算机中都是二进制的存储方式.单位就是字节.
字符流 = 字节流 + 编码表,主要用来操作文本文档类的文件类型
除基本流外: 还有缓冲流,转换流,序列化
缓冲流: 在创建流对象的时候,内置一个缓存区,减少了IO的次数,可以提高效率
转换流: 文件存放在内存或其他设备上的时候,都有默认的编码格式,转换流可以将不同编码之间做转换
序列化: 可以将一个对象,持久性的存放在文件中.还可以把这个文件拿去别的地方用.
而,将一个文件中的对象,拿出来用的操作,叫反序列化.
|