zoukankan      html  css  js  c++  java
  • 序列化和反序列化

    把java中的对象保存在持久化文件中,这就是序列化!

    把持久化文件中保存的信息还原为java中的对象,这就是反序列化!

    想实现序列化和反序列化必须让对象所在的类实现一个Serializable接口!

    public class Student implements Serializable{}

        
         //序列化
    public static void register() { Scanner input = new Scanner (System.in); System.out.println("请输入学号"); int id = input.nextInt(); System.out.println("请输入年龄:"); int age = input.nextInt(); System.out.println("请输入姓名:"); String name = input.next(); Student stu = new Student(id, age, name); OutputStream out = null; ObjectOutputStream oos = null; try { out = new FileOutputStream("d:/student.txt"); oos = new ObjectOutputStream(out); oos.writeObject(stu); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (SecurityException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); }finally{ try { oos.close(); out.close(); } catch (IOException e) { e.printStackTrace(); } } }
         //反序列化
         private
    static void login() { InputStream in = null; ObjectInputStream ois = null; try { in = new FileInputStream("d:/student.txt"); ois = new ObjectInputStream(in); Student stu = (Student) ois.readObject(); System.out.println(stu.getAge()); System.out.println(stu.getId()); System.out.println(stu.getName()); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } }
  • 相关阅读:
    彻底弄懂flex布局
    剖析Vue原理&实现双向绑定MVVM
    【Mysql进阶-3】大量实例悟透EXPLAIN与慢查询
    mysql 排序
    从ReentrantLock的实现看AQS的原理及应用
    Java面试之Synchronized解析
    基于vue-cli搭建vue项目开发环境
    在win环境下使用yarn安装 vue-cli
    优化器追踪示例
    MySQL常见的七种锁详细介绍
  • 原文地址:https://www.cnblogs.com/liutianci/p/8168022.html
Copyright © 2011-2022 走看看