练习读取多个对象
用序列化流将对象写入文件
import java.io.*;
import java.nio.charset.Charset;public class Main {public static void main(String[] args) throws IOException, ClassNotFoundException {//序列化多个对象Person p1=new Person("多多", '男',20);Person p2=new Person("少少", '男',21);Person p3=new Person("多少", '女',22);//先用高级流关联基本流 再关联本地文件ObjectOutputStream oos=new ObjectOutputStream(new FileOutputStream("untitled\\a.txt"));//调用方法oos.writeObject(p1);oos.writeObject(p2);oos.writeObject(p3);oos.close;}
}
用反序列流将文件中的数据读取出来
import java.io.*;
import java.nio.charset.Charset;public class Main {public static void main(String[] args) throws IOException, ClassNotFoundException {//创建反序列流的对象ObjectInputStream ois=new ObjectInputStream(new FileInputStream("untitled\\a.txt"));//读取文件中的数据//一次只能读取一个对象Person p1=(Person) ois.readObject();Person p2=(Person) ois.readObject();Person p3=(Person) ois.readObject();System.out.println(p1);System.out.println(p2);System.out.println(p3);ois.close();}
}
但这种写法不好
不知道写出了多少个对象
以后多个文件序列化到文件中时
我们会把所有的对象先都放到集合里面去
然后我们直接序列化集合
我们直接序列化集合
然后直接把数据读取到集合里面去