学习目标:
- 掌握 JAVA中InputStream/OutputStream和Reader/Writer概念
学习内容:
InputStream 对应 Reader
OutputStream 对应 Writer
输入 对应 读操作
输出 对应 写操作
这一切的概念都是内存相对文件的概念。
如果数据的流向是内存->文件,那对应的就是OutputStream或者Writer操作。
如果数据的流向是文件->内存,那对应的就是InputStream或者Reader操作。
代码展示:
package com.it;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
public class ObjectInputStreamDemo {
public static void main(String[] args) {
String s = "Hello World";// 定义一个字符串
byte[] b = {
'e', 'x', 'a', 'm', 'p', 'l', 'e' };// 定义一个字符数组
try {
// 创建一个新文件和一个输出流
FileOutputStream out = new FileOutputStream("test.txt");
ObjectOutputStream oout = new ObjectOutputStream(out);
// 在文件里面写点东西
oout.writeObject(s);
oout.writeObject(b);
oout.flush();
// 为我们之前创建的文件创建一个输入流。
ObjectInputStream ois = new ObjectInputStream(new FileInputStream("test.txt"));
// 读取并打印对象,并将其转换为字符串。
System.out.println("" + (String) ois.readObject());// 输出“Hello World”
// 读取并打印对象,并将其转换为字符串。
byte[] read = (byte[]) ois.readObject();
String s2 = new String(read);
System.out.println("" + s2);// 输出“example”
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
代码已经很清楚的展示了对象输入输出流的操作方式。
输出结果: