黑马程序员技术交流社区

标题: 对象序列化 [打印本页]

作者: 以梦为码    时间: 2015-7-16 19:06
标题: 对象序列化
//存储一个对象
import java.io.*;
public class ObjectStreamDemo {
        public static void main(String[] args) throws Exception {
                //创建对象的序列化流,传递字节输出流,包装一个文件
        ObjectOutputStream oos=new ObjectOutputStream(new FileOutputStream("f:\\1.txt"));       
                Student st=new Student("王强",20);
                //调用写对象的方法 writeObject
                oos.writeObject(st);
                oos.close();
               
                //创建读取对象流对象,传递字节输入流,包装文件
        ObjectInputStream ois=new ObjectInputStream(new FileInputStream("f:\\1.txt"));
        //调用读取对象的方法 readObject()
Object obj=ois.readObject();
System.out.println(obj);
ois.close();
        }
}
class Student implements Serializable{
        private static final long serialVersionUID = 1L;//设置版本
        private String name;
    private int age;
    public Student(String name,int age){
            this.name=name;
            this.age=age;
    }
    public String toString(){//重写toString
            return "姓名:"+name+"  年龄"+age;
    }
}


//存储对象数组
import java.io.*;
public class ObjectStream {
        public static void main(String[] args) throws Exception {
                //创建对象的序列化流,传递字节输出流,包装一个文件
        ObjectOutputStream oos=new ObjectOutputStream(new FileOutputStream("f:\\1.txt"));       
                Students[] st={new Students("王强",20),new Students("阿力",21),new Students("小李",21)};
                //调用写对象的方法 writeObject
                oos.writeObject(st);
                oos.close();
               
                //创建读取对象流对象,传递字节输入流,包装文件
        ObjectInputStream ois=new ObjectInputStream(new FileInputStream("f:\\1.txt"));
        //调用读取对象的方法 readObject()
Object[] obj=(Object[])ois.readObject();
for(Object ob:obj){
        System.out.println(ob);
}
ois.close();
        }
}
class Students implements Serializable{
        private static final long serialVersionUID = 1L;//设置版本
        private String name;
  private int age;
  public Students(String name,int age){
          this.name=name;
          this.age=age;
  }
  public String toString(){//重写toString
          return "姓名:"+name+"  年龄"+age;
  }
}

作者: 以梦为码    时间: 2015-7-16 19:07
哪来的表情?




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2