当前位置: 代码迷 >> 综合 >> [Java 12 IO] Serializable 初步 ObjectOutputStream ObjectInputStream 将序列化的对象打出来
  详细解决方案

[Java 12 IO] Serializable 初步 ObjectOutputStream ObjectInputStream 将序列化的对象打出来

热度:1   发布时间:2023-12-14 08:42:02.0
Person 类, 序列化后就代表对象可以作为二进制的数据流进行传输
package com.qunar.basicJava.javase.io.serializable;import java.io.Serializable;/*** Author: libin.chen@qunar.com  Date: 14-6-6 10:21*/
public class Person implements Serializable {private String name;private int age;public Person(String name, int age) {this.name = name;this.age = age;}@Overridepublic String toString() {return "姓名 : " + this.name + "; 年龄 : " + this.age;}
}
ObjectOutputStream 将序列化后的对象写入到文件中
package com.qunar.basicJava.javase.io.serializable;import java.io.*;/*** Author: libin.chen@qunar.com  Date: 14-6-6 10:25*/
public class SerDemo01 {public static void main(String[] args) throws IOException {File file = new File("/home/hp/tmp/test.txt");ObjectOutputStream objectOutputStream = null;OutputStream outputStream = new FileOutputStream(file);objectOutputStream = new ObjectOutputStream(outputStream);objectOutputStream.writeObject(new Person("张三", 30));outputStream.close();}
}
 ObjectInputStream 将序列化的对象传回来
package com.qunar.basicJava.javase.io.serializable;import java.io.*;/*** Author: libin.chen@qunar.com  Date: 14-6-6 10:27*/
public class SerDemo02 {public static void main(String[] args) throws IOException, ClassNotFoundException {File file = new File("/home/hp/tmp/test.txt");ObjectInputStream objectInputStream = null;InputStream inputStream = new FileInputStream(file);objectInputStream = new ObjectInputStream(inputStream);Object object = objectInputStream.readObject();objectInputStream.close();System.out.println(object);}
}


  相关解决方案