15.7.4 对象序列化处理ObjectInputStream类的使用

“ObjectInputStream”类继承了“InputStream”类,同时实现了“ObjectInput”接口,提供将对象序列化并从流中读取出来的功能。此类的构造器如下:


public ObjectInputStream(InputStream out)


【实例15.25】下面通过一个实例,来看看如何使用“ObjectInputStream”类。


01 import java.io.*;

02 ///创建一个文件对象f

03 ///创建一个输入流对象fis,并且以f作为参数

04 ///创建一个对象序列化处理类的对象ois,并且以fis作为参数

05 ///创建一个学生类st

06 ///利用ois对象方法将st的属性值读出

07 public class file24

08 {

09 public static void main(String[]args)throws Exception

10 {

11 File f=new File("d://raf.txt");

12 FileInputStream fis=new FileInputStream(f);

13 ObjectInputStream ois=new ObjectInputStream(fis);

14 student st=new student();

15 st=(student)ois.readObject();

16 ois.close();

17 System.out.println(st.name);

18 System.out.println(st.age);

19 System.out.println(st.code);

20 System.out.println(st.school);

21 System.out.println(st.grade);

22 System.out.println(st.address);

23 }

24 }


【代码说明】上面的程序段从文本中依次读出了对象中的数据,这样,就方便以后将对象类型的数据放入流中,来进行输入/输出操作。

【运行效果】


王鹏

28 96765

重庆大学

计算机三年级二班

重庆市沙坪坝


学到这里,所有的流输入和输出的知识就全部学习完了,希望读者能够真正地理解输入和输出的真谛。