1.标准输入输出流 System.in – BufferedInputStream – InputStream
System.out – PrintStream – OutputStream
转换流
InputStreamReader – 字节流到字符流的桥梁InputStreamReader isr = new InputStreamReader(InputStream is);
OutputStreamWriter – 字符流到字节流的桥梁
OutputStreamWriter osw = new OutputStreamWriter(OutputStream os);
按数据流向来理解。
数据从字节流流向字符流,就是字节流到字符流的桥梁
数据从字符流流向字节流,就是字符流到字节流的桥梁
实际使用上:都是把字节流传递进转换流的构造方法,变成字符流
转换流还是只能操作文本数据。打印流
PrintStream – 打印字节流
PrintWriter – 打印字符流
特点:
写任意数据
自动刷新。必须启动,并且使用println \ printf \ format 三个方法才有效
使用构造:
PrintWriter(Writer out, boolean autoFlush)序列化流
序列化:把对象想流一样传输或者存储。
反序列化:把流数据还原成对象。ObjectInputStream
Object readObject()ObjectOutputStream
void writeObject()想用序列化流操作对象, 所属类必须实现Serializable 接口。添加一个序列化id, 建议使用第二个。