Java中的ObjectInputStream –从文件中读取对象
时间:2020-02-23 14:37:22 来源:igfitidea点击:
Java中的ObjectInputStream可用于将InputStream转换为对象。
将输入流转换为对象的过程称为反序列化。
在上一篇文章中,我们了解了ObjectOutputStream并将java对象转换为输出流并写入文件。
其中我们将读取相同的序列化文件以在Java中创建一个对象。
ObjectInputStream
ObjectInputStream是Java IO类的一部分。
目的是为我们提供一种将输入流转换为Java程序中的对象的方法。
ObjectInputStream构造函数将InputStream作为参数。
由于我们正在从文件读取序列化的对象,因此我们将使用FileInputStream和ObjectInputStream来从文件读取对象。
Java ObjectInputStream示例
java.io.ObjectInputStream readObject()用于将输入流读取到Object。
我们必须进行类转换以将Object转换为实际类。
下面是ObjectInputStream示例程序,用于从文件读取对象。
package com.theitroad.files; import java.io.FileInputStream; import java.io.IOException; import java.io.ObjectInputStream; public class ObjectInputStreamExample { public static void main(String[] args) { try { FileInputStream is = new FileInputStream("EmployeeObject.ser"); ObjectInputStream ois = new ObjectInputStream(is); Employee emp = (Employee) ois.readObject(); ois.close(); is.close(); System.out.println(emp.toString()); } catch (ClassNotFoundException | IOException e) { e.printStackTrace(); } } }