欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  Java

Java中序列化与ObjectOutputStream以及ObjectInputStream的详解

程序员文章站 2022-05-23 17:45:08
...
这篇文章主要介绍了java序列化与ObjectOutputStream和ObjectInputStream的实例详解的相关资料,希望通过本文能帮助到大家,需要的朋友可以参考下

java序列化与ObjectOutputStream和ObjectInputStream的实例详解

一个测试的实体类:


public class Param implements Serializable { 
 
  private static final long serialVersionUID = 5187074869820982336L; 
   
   
  private Integer param1; 
  private String param2; 
 
  public Integer getParam1() { 
    return param1; 
  } 
 
  public void setParam1(Integer param1) { 
    this.param1 = param1; 
  } 
 
  public String getParam2() { 
    return param2; 
  } 
 
  public void setParam2(String param2) { 
    this.param2 = param2; 
  } 
 
}

测试:


public class Main { 
 
  public static void main(String[] args) throws Exception { 
    SerializeParam(); 
     
    Param param = DeserializeParam(); 
    System.out.println(MessageFormat.format("param1={0},param2={1}", param.getParam1(), param.getParam2())); 
  } 
 
  /** 
   * 将实体类序列化到本地 
   * @throws FileNotFoundException 
   * @throws IOException 
   */ 
  private static void SerializeParam() throws FileNotFoundException, IOException { 
    Param param = new Param(); 
    param.setParam1(123); 
    param.setParam2("asdf"); 
     
    ObjectOutputStream oo = new ObjectOutputStream(new FileOutputStream( new File("E:/param.txt") )); 
    oo.writeObject(param); 
    System.out.println("Person对象序列化成功!"); 
    oo.close(); 
  } 
   
  /** 
   * 反序列化 
   * @return 
   * @throws Exception 
   * @throws IOException 
   */ 
  private static Param DeserializeParam() throws Exception, IOException { 
    ObjectInputStream ois = new ObjectInputStream(new FileInputStream( new File("E:/param.txt"))); 
    Param param = (Param) ois.readObject(); 
    System.out.println("Person对象反序列化成功!"); 
    ois.close(); 
    return param; 
  } 
 
}

以上就是Java中序列化与ObjectOutputStream以及ObjectInputStream的详解的详细内容,更多请关注其它相关文章!