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

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

黄舟
黄舟asal
2017-09-22 11:13:071288semak imbas

这篇文章主要介绍了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; 
  } 
 
}

Atas ialah kandungan terperinci Java中序列化与ObjectOutputStream以及ObjectInputStream的详解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn