如下通过序列化,键盘输入十个对象的信息
try {
ObjectInputStream is = new ObjectInputStream(new FileInputStream(new File("D:/File/file.txt")));
for(int i=0;i<n;i++){
try {
Member member1 = (Member)is.readObject();
System.out.println(MessageFormat.format("member_number={0},member_name={1}", member1.getMember_number(),member1.getMember_name()));
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
你这段代码本质上就是java的序列化处理过程,如果你要从文件中删除某个对象,可以先反序列化,将文件中的对象信息重新读入内存,删除完成后再将需要的对象重新写入文件中。