Java对象的序列化和反序列化

简介: Java对象的序列化和反序列化

要序列化的了类需要实现Serializable接口


package com.mouday;
import java.io.Serializable;
public class Person implements Serializable {
    // 序列化前后的唯一标识符
    private static final long serialVersionUID = 1;
    private String name;
    private int age;
    private int score;
    public void setName(String name) {
        this.name = name;
    }
    public void setAge(int age) {
        this.age = age;
    }
    @Override
    public String toString() {
        return "Person{" +
                "name='" + name + '\'' +
                ", age=" + age +
                ", score=" + score +
                '}';
    }
}

序列化和反序列化


import com.mouday.Person;
import org.junit.Test;
import java.io.*;
public class TestDemo {
    @Test
    public void serialize() throws IOException {
        Person person = new Person();
        person.setAge(23);
        person.setName("Tom");
        ObjectOutputStream objectOutputStream = new ObjectOutputStream(
                new FileOutputStream(
                        new File("person.txt")
                )
        );
        objectOutputStream.writeObject(person);
        objectOutputStream.close();
    }
    @Test
    public void deserialize() throws IOException, ClassNotFoundException {
        ObjectInputStream objectInputStream = new ObjectInputStream(
                new FileInputStream(
                        new File("person.txt")
                )
        );
        Person person = (Person)objectInputStream.readObject();
        objectInputStream.close();
        System.out.println(person);
    //    Person{name='Tom', age=23}
    }
}
相关文章
|
7月前
|
存储 C#
C#中的序列化和反序列化
C#中的序列化和反序列化
|
缓存 安全 网络协议
对象的序列化与反序列化详解
对象的序列化与反序列化详解
117 0
对象的序列化与反序列化详解
|
存储 Java
序列化和反序列化
序列化和反序列化
78 0
序列化与反序列化
序列化与反序列化
66 0
|
存储 XML JSON
Java对象的序列化和反序列化
Java 对象的序列化和反序列化是一种将对象转换成字节流并存储在硬盘或网络中,以及从字节流中重新加载对象的操作。Java 的序列化和反序列化提供了一种方便的方式,使得可以将对象在不同的应用程序之间进行交互。
166 0
|
JSON IDE Java
浅谈序列化与反序列化
浅谈序列化与反序列化
浅谈序列化与反序列化
java对象的序列化与反序列化
序列化与反序列化 原理 对象的序列化流与反序列化流(ObjectOutputStream,ObjectInputStream)及transient关键字 import java.io.FileOutputStream; import java.io.IOException; import java.
|
XML 存储 JSON
详解C# 序列化和反序列化
详解C# 序列化和反序列化
194 0
详解C# 序列化和反序列化