• Java I/O流-ObjectInputStream、ObjectOutputStream


    一、整体代码

          ObjectStreamDemo.java

    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.ObjectInputStream;
    import java.io.ObjectOutputStream;
    import java.util.ArrayList;
    import java.util.Date;
    import java.util.List;
    
    
    
    public class ObjectStreamDemo {
    
        /**
         * 文件转化为Object
         * @param fileName
         * @return byte[]
         */
        public static Object file2Object(String fileName) {
    
            FileInputStream fis = null;
            ObjectInputStream ois = null;
            try {
                fis = new FileInputStream(fileName);
                ois = new ObjectInputStream(fis);
                Object object = ois.readObject();
                return object;
            } catch (Exception e) {
                e.printStackTrace();
            } finally {
                if (fis != null) {
                    try {
                        fis.close();
                    } catch (IOException e1) {
                        e1.printStackTrace();
                    }
                }
                if (ois != null) {
                    try {
                        ois.close();
                    } catch (IOException e2) {
                        e2.printStackTrace();
                    }
                }
            }
            return null;
        }
    
        /**
         * 把Object输出到文件
         * @param obj
         * @param outputFile
         */
        public static void object2File(Object obj, String outputFile) {
            ObjectOutputStream oos = null;
            FileOutputStream fos = null;
            try {
                fos = new FileOutputStream(new File(outputFile));
                oos = new ObjectOutputStream(fos);
                oos.writeObject(obj);
            } catch (Exception e) {
                e.printStackTrace();
            } finally {
                if (oos != null) {
                    try {
                        oos.close();
                    } catch (IOException e1) {
                        e1.printStackTrace();
                    }
                }
                if (fos != null) {
                    try {
                        fos.close();
                    } catch (IOException e2) {
                        e2.printStackTrace();
                    }
                }
            }
        }
    
        /**
         * @param args
         */
        public static void main(String[] args) {
    
            String fileName = "1.txt";
            UserVo vo = new UserVo("michael", "大大", 18, new Date());
    
            ObjectStreamDemo.object2File(vo, fileName);
            System.out.println("success write bean:UserVo to file.");
    
            UserVo tmpvo = (UserVo) ObjectStreamDemo.file2Object(fileName);
            System.out.println("read bean:UserVo from file get info : " + tmpvo);
    
        }
    
    }

       

            UserVo.java

    import java.io.Serializable;
    import java.util.Date;
    
    public class UserVo implements Serializable {
    
        /**
         * serialVersionUID
         */
        private static final long serialVersionUID = -6846034858002233878L;
    
        private String userId;
    
        private String userName;
    
        private int age;
    
        private Date born;
    
        public UserVo() {
        }
    
        public UserVo(String userId, String userName, int age, Date born) {
            this.userId = userId;
            this.userName = userName;
            this.age = age;
            this.born = born;
        }
    
        /**
         * @return the userId
         */
        public String getUserId() {
            return userId;
        }
    
        /**
         * @return the userName
         */
        public String getUserName() {
            return userName;
        }
    
        /**
         * @return the age
         */
        public int getAge() {
            return age;
        }
    
        /**
         * @return the born
         */
        public Date getBorn() {
            return born;
        }
    
        /**
         * @param pUserId the userId to set
         */
        public void setUserId(String pUserId) {
            userId = pUserId;
        }
    
        /**
         * @param pUserName the userName to set
         */
        public void setUserName(String pUserName) {
            userName = pUserName;
        }
    
        /**
         * @param pAge the age to set
         */
        public void setAge(int pAge) {
            age = pAge;
        }
    
        /**
         * @param pBorn the born to set
         */
        public void setBorn(Date pBorn) {
            born = pBorn;
        }
    
        @Override
        public String toString() {
            return "userId=[ " + userId + " ] userName=[ " + userName + " ] age=[ "
                    + age + " ] born=[ " + born + "] .";
        }
    
    }


    二、解释

           


  • 相关阅读:
    JSP,TOMCAT,JD,mysql环境搭建和连接数据库
    jsp基础学习记录
    将d盘根目录下的troydll.dll插入到ID为4000的进程中
    WebSocket内部原理
    基于流(Comet Streaming)
    短轮询
    DjangoWebSocket
    01WebSocket是什么
    Python实现WebSocket
    WebSocket
  • 原文地址:https://www.cnblogs.com/keanuyaoo/p/3297244.html
Copyright © 2020-2023  润新知