zoukankan      html  css  js  c++  java
  • 序列化对象

    实现Serialiable 接口才能进行序列化,标注transient和static的变量会被忽略。

    import java.io.Serializable;
    
    class Customer implements Serializable {
            private String name;
            private int age;
            public Customer(String name, int age) {
                this.name = name;
                this.age = age;
            }
    
            public String toString() {
                return "name=" + name + ", age=" + age;
            }
        }
    import java.io.*;
    import java.util.Date;
    
    public class ObjectSaver { 
        /*其中的  D:\objectFile.obj 表示存放序列化对象的文件*/
    
        public static void out(Object object,String filename){
            try {
            OutputStream  file= new FileOutputStream(filename);
             //序列化对象
            ObjectOutputStream out = new ObjectOutputStream(file);
    //        Customer customer = new Customer("王麻子", 24);    
            out.writeObject(object);    //写入customer对象
            out.close();    
            
            } catch (FileNotFoundException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
    
        }
        public static Object in (String filename){
                //反序列化对象
            Object object = null;
            try {
                ObjectInputStream in = new ObjectInputStream(new FileInputStream(filename));
                 object =  in.readObject();    //读取customer对象
                System.out.println(object);
                in.close();
            
            } catch (FileNotFoundException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (ClassNotFoundException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            return object;    
        }
        public static void main(String[] args) throws Exception {
            String filename = "src\objectFile.txt";
            Customer customer = new Customer("王麻子", 24);
                  out(customer,filename);
                      in(filename);
            
    
        }

       另外

  • 相关阅读:
    Linear Regression Example
    三角函数画图(Python)
    机器学习算法笔记系列之深入理解主成分分析PCA-原理篇
    Boosted Trees 介绍
    Jacobian矩阵和Hessian矩阵
    使用插件pagehelper在mybatis中实现分页查询
    git常用操作
    Python远程视频监控
    FPGA选型
    英文Datasheet没那么难读
  • 原文地址:https://www.cnblogs.com/the-wang/p/7248746.html
Copyright © 2011-2022 走看看