出现EOFException错误,按视频中的是顺序错误我没办法理解我这个代码顺序哪里出错了
package com.imooc.print.classfile;
import java.io.*;
public class Test {
public static void main(String[] args) {
Product p1 = new Product("123", "iphone", "telephone", 4888.0);
Product p2 = new Product("234", "ipad", "computer", 5088.0);
Product p3 = new Product("345", "macbook", "computer", 10688.0);
Product p4 = new Product("256", "iwatch", "watch", 4799.0);
try {
FileOutputStream fos = new FileOutputStream("apple.txt");
BufferedOutputStream bos = new BufferedOutputStream(fos);
ObjectOutputStream oos = new ObjectOutputStream(bos);
FileInputStream fis = new FileInputStream("apple.txt");
BufferedInputStream bis = new BufferedInputStream(fis);
ObjectInputStream ois = new ObjectInputStream(bis);
oos.writeObject(p1);
oos.writeObject(p2);
oos.writeObject(p3);
oos.writeObject(p4);
oos.flush();
System.out.println((Product) ois.readObject());
System.out.println((Product) ois.readObject());
System.out.println((Product) ois.readObject());
System.out.println((Product) ois.readObject());
fos.close();
bos.close();
oos.close();
fis.close();
bis.close();
ois.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
}0
收起
正在回答
1回答
你要在写对象的时候,把4个Product放在一个集合中,然后writeObject这个集合,只写一次。读的时候只读一次,readObject出之后也放在集合中。都要对这个集合进行操作。因为在读的时候,它会一次性读出。祝:学习愉快
Android零基础入门2018版
- 参与学习 人
- 提交作业 5461 份
- 解答问题 7235 个
此次推出的专题为Android攻城狮培养计划的第一部分语法与界面基础篇,将带大家从0开始学习Android开发。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星