用ObjectInputStream类的readObject()方法时,怎么判断已经读完了,谢谢 用writeObject(),写进去了几个序列化的对象后,我再读取,怎么判断读完了呢还有就是我如果向同一个文件里写进了多个对象,然后再读取的时候是不是要按写的顺序挨个读取啊谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我记得不错的话,应该read返回值为-1时,表示读完。 还有几个对象写入一个文件,你会假如不是一个Stream写入的话,每个列前面都会有几个几个字节的标志符之类的东西。需要跳过的。 FileInputStream fis = new FileInputStream("dat.txt");ObjectInputStream ois = new ObjectInputStream(fis);int i = ois.read();while(i != -1){ System.out.println((Person)ois.readObject()); i = ois.read();}你是指这样吗?但这样,我试了下,并没有输出啊,我跟了下,i一开始就直接是-1了 个人认为把对象写入文件,不妨试下把对象先加到集合Set ,List,Map,再将集合写入文件。这样就比较好操作。如果你连续写入两个对象,可能读取时会出现流腐败现象。 就是说无法像read返回-1这样很直接的判断? 应当是这样的: int i = 0;while((i = ois.read())!= -1){ System.out.println((Person)ois.readObject()); i = ois.read(); 现在是我写进去了,但是调用read()的时候直接就返回-1了 关于BMI小程序的问题~~求助~~ 关于AWT的 基本问题 360度三维立体拖动 为什么我得到的图片大小是0字节 这个程序为什么不能按照新浪网的ip地址打印出新浪网的url名,请高手帮忙改改,谢谢了 lomboz修改class后 重新generate ejb classes 出错 怎么回事 关于Java Web Start 怎样提高java程序的运行性能 Java教程 spring boot打jar包后报错,可是我本地在idea中跑是没有问题的,求救啊!!! 用代码如何实给菜单项前面加个图片??紧急! 如何使窗体的关闭按纽不可用???
还有几个对象写入一个文件,你会假如不是一个Stream写入的话,每个列前面都会有几个几个字节的标志符之类的东西。需要跳过的。
ObjectInputStream ois = new ObjectInputStream(fis);
int i = ois.read();
while(i != -1){
System.out.println((Person)ois.readObject());
i = ois.read();
}你是指这样吗?但这样,我试了下,并没有输出啊,
我跟了下,i一开始就直接是-1了
int i = 0;
while((i = ois.read())!= -1){
System.out.println((Person)ois.readObject());
i = ois.read();