java中 使用输入+输出流对对象序列化

 

对象: 注意记得实现 Serializable

package com.nf147.sim.entity;

import java.io.Serializable;

public class News implements Serializable {
    private int id;
    private String title;
    private String body;

    public News() {
    }

    public News(int id, String title, String body) {
        this.id = id;
        this.title = title;
        this.body = body;
    }

    public News(String title, String body) {
        this.title = title;
        this.body = body;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public String getBody() {
        return body;
    }

    public void setBody(String body) {
        this.body = body;
    }

    @Override
    public String toString() {
        return "News{" +
                "id=" + id +
                ", title='" + title + '\'' +
                ", body='" + body + '\'' +
                '}';
    }
}

 

 

 


@Test
public void serialize() throws IOException { //对象序列化
List<News> list = Arrays.asList(
new News("yuandn", "放假了"),
new News("春节", "快来了")
);
FileOutputStream fileOutputStream = new FileOutputStream(new File("e:/news.class"));
ObjectOutputStream stream = new ObjectOutputStream(fileOutputStream);
stream.writeObject(list);
System.out.println("文件输出完成");
stream.close();
}

@Test
public void deserialization() throws IOException, ClassNotFoundException { //对象反序列号
FileInputStream fileInputStream = new FileInputStream(new File("e:/news.class"));
ObjectInputStream objectInputStream = new ObjectInputStream(fileInputStream);
Object o = objectInputStream.readObject();
System.out.println(o);
System.out.println("文件输入完成");
objectInputStream.close();
}
 

 

结果:

posted @ 2018-12-28 11:17  随★风  阅读(546)  评论(2编辑  收藏  举报