黑马程序员技术交流社区
标题:
【石家庄校区】标准IO流笔记
[打印本页]
作者:
巴拉巴拉x
时间:
2018-4-23 14:22
标题:
【石家庄校区】标准IO流笔记
本帖最后由 小石姐姐 于 2018-4-24 19:57 编辑
标准IO流笔记
标准IO输入输出流
标准输入流
成员变量:public static final InputStream in: 字节输入流:用来读取键盘录入的数据
InputStream is = System.in;
标准输出流
成员变[url=]微软雅黑[/url]量: public static final PrintStream out: 字节输出流,将数据输出到命令行
OutputStream os = System.out;
OutputStreamWriter 的概述
标准输出流是一个字节输出流,所以只能输出字节或者字节数组,但是我们读取到的数据则是字符串,如果想进行输出还需要转换成字节数组,我们要向通过标准输出流输出字符串,把标准输出流换成一种字符输出流即可,OutputStreamWriter
InputStreamReader的概述和使用:控制台录入到文件
是Reader类的子类,属于字符输入流,是字节流通向字符流的桥梁
作用,以读取字符流的方式编写代码,而底层是字节流
打印流概述
分类
PrintSream: 字节打印流
PrintWriter:字符打印流
可以自动换行,println()
不能输出字节,但是可以输出其他任意类型
通过某些配置,可以实现自动刷新,(只有在调用println(),printf或format才有用)
是包装流,不具备写出功能
可以把字节输出流转换成字符输出流.
只有输出流,因为打印是输出操作.
特有功能
自动换行:使用方法println(),和系统无关.
自动刷新
创建PrintWriter对象时,启动自动刷新开关,而且只有在调用println(),printf(),printformat()这三种方法的时候才能自动刷新
注意:
创建File对象的true是判断对文件是否追加,
创建打印流对象的boolean是判断是否刷新.
对象错做流
可以用于读写任意类型的对象Object,所有类的父类
ObjectOutputStream 对象输出流,以OutputStream结尾,是字节流
writeObject
ObjectOutputStream(OutputStream in);
ObjectInputStream 对象输入流,以InputStream结尾,是字节流
readObject
ObjectInputStream(InputStream in);
注意事项:
使用对象输出流对象输出的只能使用对象输入流来读入对象.
只能将
Properties概述
实现了Map,也是一个双列集合
在java中有一个对应的类,实现了Map,可以使用Map接口的方法
#开头的是注释信息
Properties:表示了一个持久的属性集,属性中每个键和他对应的值都是String类型
构造方法
无参构造:Properties();
特有方法
String getProperty(String key);
String getProperty(string key,String defaultValue);
Properties 和IO流结合的功能
void list(PrintWriter out)
编码表
ASCII
GB2312---->GBK
Unicode 所有的字符都占2个字节
UTF-8,长度可变的码表(由Unicode转变而来)
ANSI:本地编码表:根据系统设置决定编码表(中国默认的是GBK);
ISO-8859-1西方语言编码
乱码
编码保持前后一致即可解决
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2