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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

1、缓冲流为什么会提高IO流读写的效率?
     缓冲流的基本原理,实在创建流对象时,会创建一个内置的默认大小的缓冲区数组,通过缓冲区读写,
    减少系统IO次数,从而提高读写的效率。
2、我们在读写过程中,什么情况下会发生写入乱码问题?是怎样产生的?我们是如何解决的?
     在IDEA中,使用 FileReader 读取项目中的文本文件。由于IDEA的设置,都是默认的 UTF-8 编码,
所以没有任何 问题。但是,当读取Windows系统中创建的文本文件时,由于Windows系统的默认是GBK编码,就会出现乱码。
     InputStreamReader类
转换流 java.io.InputStreamReader ,是Reader的子类,是从字节流到字符流的桥梁。它读取字节,并使用指定 的字符集将其解码为字符。
它的字符集可以由名称指定,也可以接受平台的默认字符集。
OutputStreamWriter类
转换流 java.io.OutputStreamWriter ,是Writer的子类,是从字符流到字节流的桥梁。使用指定的字符集将字符 编码为字节。
它的字符集可以由名称指定,也可以接受平台的默认字符集。
3、序列化流中的serialVersionUID的作用
目的在于验证序 列化的对象和对应类是否版本匹配。
4、请根据自己的语言表述IO流(
(1)IO主要分为字节流、字符流以及他们的增强流;
(2)字节流包括输出流InputStream,输出流OutputStream及其他们的子类,常用的是FileOutputStream和FileInputStream这两个子类;
(3)字符流包括输入流Reader和输出流Writer及其他们子类,常用的是FileReader和FileWriter两个子类
(4)增强流包括缓冲流(字符字节及其输入输出共四类),转换流(输入和输出两种)序列流(输入输出)和打印输出流(输出);
        a.缓冲流主要是用来提高读写效率的,其内部自带缓冲区,默认为8KB,可设置,对字符的读写提供了行读取和写入通用换行符;
        b.转换流主要是用来解决字符文件的编码问题,可以指定字符编码对字符文件进行读写,避免乱码问题;
        c.序列流主要是用来实现对象的序列化(将对象存储到文件中)和反序列化(从对象文件中直接读取对象信息,创建对象);
        d.打印输出流主要是用于将各种类型的数据以字符串形式输出到指定的目标例如控制台或某个文件。
回复 使用道具 举报
1、缓冲流为什么会提高IO流读写的效率?
     缓冲流的基本原理,实在创建流对象时,会创建一个内置的默认大小的缓冲区数组,通过缓冲区读写,
    减少系统IO次数,从而提高读写的效率。
2、我们在读写过程中,什么情况下会发生写入乱码问题?是怎样产生的?我们是如何解决的?
     在IDEA中,使用 FileReader 读取项目中的文本文件。由于IDEA的设置,都是默认的 UTF-8 编码,
所以没有任何 问题。但是,当读取Windows系统中创建的文本文件时,由于Windows系统的默认是GBK编码,就会出现乱码。
     InputStreamReader类
转换流 java.io.InputStreamReader ,是Reader的子类,是从字节流到字符流的桥梁。它读取字节,并使用指定 的字符集将其解码为字符。
它的字符集可以由名称指定,也可以接受平台的默认字符集。
OutputStreamWriter类
转换流 java.io.OutputStreamWriter ,是Writer的子类,是从字符流到字节流的桥梁。使用指定的字符集将字符 编码为字节。
它的字符集可以由名称指定,也可以接受平台的默认字符集。
3、序列化流中的serialVersionUID的作用
目的在于验证序 列化的对象和对应类是否版本匹配。
4、请根据自己的语言表述IO流(
(1)IO主要分为字节流、字符流以及他们的增强流;
(2)字节流包括输出流InputStream,输出流OutputStream及其他们的子类,常用的是FileOutputStream和FileInputStream这两个子类;
(3)字符流包括输入流Reader和输出流Writer及其他们子类,常用的是FileReader和FileWriter两个子类
(4)增强流包括缓冲流(字符字节及其输入输出共四类),转换流(输入和输出两种)序列流(输入输出)和打印输出流(输出);
        a.缓冲流主要是用来提高读写效率的,其内部自带缓冲区,默认为8KB,可设置,对字符的读写提供了行读取和写入通用换行符;
        b.转换流主要是用来解决字符文件的编码问题,可以指定字符编码对字符文件进行读写,避免乱码问题;
        c.序列流主要是用来实现对象的序列化(将对象存储到文件中)和反序列化(从对象文件中直接读取对象信息,创建对象);
        d.打印输出流主要是用于将各种类型的数据以字符串形式输出到指定的目标例如控制台或某个文件。
回复 使用道具 举报
1234
您需要登录后才可以回帖 登录 | 加入黑马