Java对象写入文件中

Java对象写入文件中

Tags: Java

摘要

Java对象写入文件中,序列化

为什么要写入文件中

Java 对象可以写入文件中为了以后可以再访问这个对象, 这种操作叫做序列化。 首先需要序列化的对象要实现接口java.io.Serializable, 然后使用ObjectOutputStream把对象写入文件中.

java对象

package cn.javacore.io.serialization;

import java.io.Serializable;

public class Address implements Serializable {

    String street;
    String country;

    public void setStreet(String street) {
        this.street = street;
    }

    public void setCountry(String country) {
        this.country = country;
    }

    public String getStreet() {
        return this.street;
    }

    public String getCountry() {
        return this.country;
    }

    @Override
    public String toString() {
        return new StringBuffer(" Street : ")
                .append(this.street)
                .append(" Country : ")
                .append(this.country).toString();
    }

}

序列化类

package cn.javacore.io.serialization;

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

public class Serializer {

    public static void main(String args[]) {

        Serializer serializer = new Serializer();
        serializer.serializeAddress("wall street", "united state");
    }

    public void serializeAddress(String street, String country) {

        Address address = new Address();
        address.setStreet(street);
        address.setCountry(country);
        try {
            FileOutputStream fout = new FileOutputStream("/home/zhu/address.ser");
            ObjectOutputStream oos = new ObjectOutputStream(fout);
            oos.writeObject(address);
            oos.close();
            System.out.println("Done");
        } catch (Exception ex) {
            ex.printStackTrace();
        }
    }
}

执行main方法之后,Address对象的实例内容就被保存在文件中了/home/zhu/address.ser

如何读取出来,可以看下小节内容。