zoukankan      html  css  js  c++  java
  • Java序列化的例子

    import java.io.ByteArrayInputStream;
    import java.io.ByteArrayOutputStream;
    import java.io.ObjectInputStream;
    import java.io.ObjectOutputStream;
    import java.io.Serializable;

    public class MessageContainer implements Serializable {

        
    // 管道对通告
        private byte[] pairOfPipesAdv;
        
    // 
        private String whatToDo;
        
    // 我的ID
        private String userID;
        
    // 文件名
        private String filePath;

        
    /**
         * 
    @return the filePath
         
    */
        
    public String getFilePath() {
            
    return filePath;
        }

        
    /**
         * 
    @param filePath the filePath to set
         
    */
        
    public void setFilePath(String filePath) {
            
    this.filePath = filePath;
        }

        
    public MessageContainer() {
            pairOfPipesAdv 
    = null;
            whatToDo 
    = null;
            userID 
    = null;
        }

        
    public void setpairOfPipesAdv(byte pairOfPipesAdv[]) {
            
    this.pairOfPipesAdv = pairOfPipesAdv;
        }

        
    public byte[] getpairOfPipesAdv() {
            
    return pairOfPipesAdv;
        }

        
    public void setwhatToDo(String whatToDo) {
            
    this.whatToDo = whatToDo;
        }

        
    public String getwhatToDo() {
            
    return whatToDo;
        }
        
            
    /**
         * 
    @return the userID
         
    */
        
    public String getUserID() {
            
    return userID;
        }

        
    /**
         * 
    @param userID the userID to set
         
    */
        
    public void setUserID(String userID) {
            
    this.userID = userID;
        }

        
    /**
         * 序列化消息容器
         
    */
        
    public static byte[] serializeMessageConatiner(MessageContainer messageContainer) {
            
    byte serializedObject[] = null;
            
    try {
                ByteArrayOutputStream bos 
    = new ByteArrayOutputStream();
                ObjectOutputStream out 
    = new ObjectOutputStream(bos);
                out.writeObject(messageContainer);
                out.close();
                serializedObject 
    = bos.toByteArray();
            } 
    catch (Exception e) {
                e.printStackTrace();
            }
            
            
    return serializedObject;
        }

        
    /**
         * 反序列化消息容器
         
    */
        
    public static MessageContainer deserializeMessageConatiner(byte serializedMessageContainer[]) {
            MessageContainer messageContainer 
    = null;
            
    try {
                ObjectInputStream in 
    = new ObjectInputStream(new ByteArrayInputStream(serializedMessageContainer));
                messageContainer 
    = (MessageContainer) in.readObject();
            } 
    catch (Throwable t) {
                t.printStackTrace();
            }        
            
    return messageContainer;
        }
    }
  • 相关阅读:
    步步为营 C# 技术漫谈 一、反射机制
    Windows API、CRT和STL
    MVC3 基本业务开发框架
    .NET实现之(WebBrowser数据采集—终结篇)
    步步为营 C# 技术漫谈 二、ASP.NET 页生命周期
    步步为营 .NET 代码重构学习笔记 十
    步步为营 .NET 代码重构学习笔记 十三
    MagicDict开发总结6 [划词 检索]
    步步为营 .NET 代码重构学习笔记系列总结
    项目多少是可以配置的?
  • 原文地址:https://www.cnblogs.com/cuizhf/p/2173086.html
Copyright © 2011-2022 走看看