1.什么是输入流?什么是输出流?
输入流就是把其他设备上的数据读取到内存中的流。
输出流把数据从内存中写到其他设备上
2.输入流读取有几种方式,输出流写出有几种方式?
输入流分为:
字节输入流:将指定的字节信息写入到内存正宗,但是只能是字节,如果是中文的话会出现乱码的情况
字符输入流:可以读取字符信息到内存中
输出流分为:
字节输出流:将指定的字节信息写出到指定的目的地,但是只能写的是字节,如果是中文的话会出现乱码的情况,他写的是十进制,如果写的是0-127之间的十进制那么在文件中会显示的是十进制所对应的ASCII码所对应的字母,如果超过127.那么会去查找对应系统编码表.
字符输出流:将指定的字符信息写出到指定的目的地,可以是字节,也能是中文汉字,
3.字符流和字节流的区别? 字符流可以写出和写入中文,而字节流不能写中文,在IDEA中一个中文等于3个字节,所以使用字节流的话会出现乱码的情况
4.JDK7之前,JDK7和JDK7之后对IO流异常的处理有什么变化?
JDK7之前使用try.....catch....finally语句来处理异常,在try中写可能会发生异常的代码,然后在catch中写异常的处理方法,在finlly语句块中写光流的操作.
JDK7try().....catch....finally 可以把创建流对象放在try()后的括号中定义,这样不用在写finally语句块就能在try语句结束后,就能自动的关闭流
JDK7之后try().....catch....finally 可以把创建流对象的语句放在try外面,然后在括号中使用对象,这样也不用在写finally语句块就能在try语句结束后,就能自动的关闭流但是这样会有一个问题就是创建流对象的语句是放在try外面的,所以要在声明一下异常,
|