A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

刘慧梅
1、缓冲流为什么会提高IO流读写的效率?
缓冲流在创建流对象是会内置一个缓冲区,减少IO次数,从而提高IO流读写的效率
2、我们在读写过程中,什么情况下会发生写入乱码问题?是怎样产生的?我们是如何解决的?
在Windows中默认GBK编码表,在IDEA中默认的是UTF-8编码表,在读写的过程中会发生写入乱码问题。
通过转换流指定编码读取或写出
3、请根据自己的语言表述IO流的体系
IO按流向分,分为输入流和输出流。按数据额类型分,分为字符流和字节流。
字符流分为字符输出流和字符输入流;在基本的流对象基础之上创建缓冲字符流,提高IO流读写效率。
字节流分为字节数出流和字节输入流;在基本的流对象基础之上创建缓冲字节流,提高IO流读写效率。
还分为转换流、序列化流、打印流。
回复 使用道具 举报
彭东亮
1、缓冲流为什么会提高IO流读写的效率?
缓冲流在创建流对象时,会创建一个内置的默认大小的缓冲区数组,通过缓冲区读写,减少系统IO次数,从而提高读写的效率
2、我们在读写过程中,什么情况下会发生写入乱码问题?是怎样产生的?我们是如何解决的?
当我们对同一份文件进行编码和解码时所使用的字符编码不同就会产生乱码问题,idea默认使用的为UTF-8码,而Window默认使用的时GBK码,可以通过转换流的InputStreamReader类与OutputStreamWriter类来规定编码与解码规则来进行解决;
3、请根据自己的语言表述IO流的体系
IO流中主要分为输出流与输入流,其中输入流与输出流根据数据类型可分为字符流和字节流,IO流有基本流,缓冲流,转换流,序列化流,后三者流都是在基本流的基础上进行操作,缓冲流在创建流对象时,会创建一个内置的缓冲区,通过读写缓冲区来减少IO次数,提高读写效率;转换流通过在编码和解码使用的字符编码来制定规则,避免编码规则不统一而造成乱码。序列化流在序列化过程中将对象作为一个字节序列进行存储,以持久保存一个对象信息,反序列化将字节序列读取出来,重构对象;
回复 使用道具 举报
1.在创建流对象时,会创建一个内置的默认大小的缓冲区数组,通过缓冲区读写,减少系统IO次数,从而提高读写的效率.

2.因为编码的不一样,比如我们Windows系统默认的是GBK编码而我们的IDEA默认的是UTF-8编码就会产生乱码,通过转换流InputStramReader和OutputStreamWriter转换.

3.主要分为字节流字符流,字节流包括普通字节流和高效字节流和序列化字节流,字符流包括普通字符流和高效字符流和转换流
回复 使用道具 举报
12
您需要登录后才可以回帖 登录 | 加入黑马