关闭

使用对象流读写对象代码笔记(ObjectInputStream ,ObjectOutputStream)

标签: 对象流可序列化ObjectInputStreamObjectOutputStream
377人阅读 评论(0) 收藏 举报
分类:

import java.io.FileInputStream;

public class TestObject03
{
    //A.使用对象流读person对象
    public static void read()
    {
        ObjectInputStream ois = null;
        try
        {
            ois = new ObjectInputStream(new FileInputStream("d:/b.txt"));
            Person p = (Person)ois.readObject();
            
            p.setName("aaa");
            System.out.println(p.getName());
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }
        finally{
            if(ois != null)
            {
                try
                {
                    ois.close();
                }
                catch (IOException e)
                {
                    e.printStackTrace();
                }
            }
            
        }
    }

    

    //B.使用对象流写person对象

    public static void write()
    {
        ObjectOutputStream oos = null;
        try
        {
            oos = new ObjectOutputStream(new FileOutputStream("d:/b.txt"));
            Person p = new Person("张三");
            oos.writeObject(p);
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }
        finally{
            if(oos != null)
            {
                try
                {
                    oos.close();
                }
                catch (IOException e)
                {
                    e.printStackTrace();
                }
            }
        }
    }
    
    
    public static void main(String[] args)
    {
//        write();
        read();
        System.out.println("end");
    }

}


//注意:person类必须实现序列化接口!

class Person implements Serializable{
    
    /**
     * serialVersionUID
     */

    private static final long serialVersionUID = 1L;
    private String name;
    public Person()
    {
    }
    public Person(String name)
    {
        this.name = name;
    }
    public String getName()
    {
        return name;
    }
    public void setName(String name)
    {
        this.name = name;
    }
    
}
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:133266次
    • 积分:2491
    • 等级:
    • 排名:第15865名
    • 原创:77篇
    • 转载:84篇
    • 译文:2篇
    • 评论:13条
    最新评论