码迷,mamicode.com
首页 > 其他好文 > 详细

IO (五)

时间:2017-10-15 21:24:13      阅读:209      评论:0      收藏:0      [点我收藏+]

标签:tin   string   cep   div   重构   ble   file   示例   str   

1 序列化和反序列化

1.1 ObjectOutputStream 序列化

1.1.1 概述

  • ObjectOutputStream将Java对象的基本数据写入OutputStream,可以使用ObjectInputStream读取对象。
  • 通过在流中使用文件可以实现对象的持久存储。
  • 如果流是Socket,则可以在另一台主机上火另一个进程中重构对象。

 

1.1.2 构造方法

  • 创建写入指定OutputStream的ObjectOutputStream
public ObjectOutputStream(OutputStream out)  throws IOException

 

1.1.3 方法

  • 将指定对象写入ObjectOutputStream
public final void writeObject(Object obj) throws IOException

 

1.2 ObjectInputStream 反序列化

1.2.1 概述

  • ObjectInputStream对以前使用ObjectOutputStream写入的基本数据和对象进行反序列化。

 

1.2.2 构造方法

  • 创建从指定InputStream读取的ObjectInputStream
public ObjectInputStream(InputStream in) throws IOException

 

1.2.3 方法

  • 从ObjectInputStream中读取对象
public final Object readObject()  throws IOException, ClassNotFoundException

 

1.3 示例

  • 示例:序列化对象
package java20;

import java.io.Serializable;

/**
 * 2017/10/15
 * 说明:
 */
public class Person implements Serializable {
    private String name;
    private int age;

    public Person() {
    }

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }
}
package java20;

import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectOutputStream;

/**
 * 2017/10/15
 * 说明:
 */
public class ObjectOutputStreamDemo {
    public static void main(String[] args) throws IOException {
        ObjectOutputStream os = new ObjectOutputStream(new FileOutputStream("person.txt"));

        os.writeObject(new Person("张三",50));

        os.close();

    }
}

 

  • 示例:反序列化
package java20;

import java.io.FileInputStream;
import java.io.IOException;
import java.io.ObjectInputStream;

/**
 * 2017/10/15
 * 说明:
 */
public class ObjectInputStreamDemo {
    public static void main(String[] args) throws IOException, ClassNotFoundException {
        ObjectInputStream oi = new ObjectInputStream(new FileInputStream("person.txt"));

        Person p = (Person) oi.readObject();

        System.out.println(p.getName());
        System.out.println(p.getAge());

    }
}

 

IO (五)

标签:tin   string   cep   div   重构   ble   file   示例   str   

原文地址:http://www.cnblogs.com/xuweiweiwoaini/p/7673792.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!