黑马程序员技术交流社区

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

作者: Friendy89    时间: 2013-8-8 12:23
标题: 对象序列化问题
本帖最后由 Friendy89 于 2013-8-8 12:24 编辑

用IO流网文件中写对象是怎么写入多个对象,我怎么只能写入一个对象
  1. import java.io.FileOutputStream;
  2. import java.io.IOException;
  3. import java.io.ObjectOutputStream;

  4. import IO.P4.Print.Person;

  5. public class ObjectStreamDemo {
  6.         public static void main(String[] args) throws IOException, ClassNotFoundException {
  7.                 writeObj();
  8.         }
  9.         //对象序列化
  10.         public static void writeObj() throws IOException, IOException {
  11.                 ObjectOutputStream oos =
  12.                                 new ObjectOutputStream(new FileOutputStream("src\\IO\\tempfile\\obj.txt"));
  13.                 oos.writeObject(new Person("lisi",23));//<FONT color=red>如果还要继续添加对象应该怎么写
  14. </FONT>                oos.close();
  15.         }
  16. }
复制代码

作者: chslzj    时间: 2013-8-8 13:16
额,我觉得一个文件存一个对象比较好,不用考虑太多的东西
作者: 神之梦    时间: 2013-8-8 21:13
另外搞个文件吧
作者: a767175432    时间: 2013-8-8 21:50
可以的 在new ObjectOutputStream()里的参数是OutputStream 这个对像后面需要一个boolean类型的值是否指定的文件续写
这样就可以在一个文件写入两个对象了
在读对象的时候直接读就可以了 想用哪个对象就强转成哪个对象就行了
作者: 肥猫    时间: 2013-8-8 23:08
你要序列化怎么代码中没有实现那个序列化的接口噢俄?
作者: 柳小龙    时间: 2013-8-8 23:47
这是因为每次写入都会把前一次的值冲掉。。。根据FileOutputStream(File file, boolean append)构造方法构造文件输出流,便可以很好的解决这个问题。。。这个问题我也遇到过,当时怎么看都没错,某一天看API帮助文档时,看到上面的构造方法,才恍然大悟。。





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