出现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 份
- 解答问题 7238 个
此次推出的专题为Android攻城狮培养计划的第一部分语法与界面基础篇,将带大家从0开始学习Android开发。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星