好的,伙计们,我已经在这方面工作了很长时间,我有一个电影库存
Iroman 3
Momento 2
LifeofPi 2
Superman 2
The Crazies 1
得到一个异常:java.io.StreamCorruptedException:无效的流头:49726F6E(意味着我输入文件的第一部分。)
我明白为什么它不会让我加载:ObjectInputStream 反序列化以前使用 ObjectOutputStream 编写的原始数据和对象。“inventory.dat 可能不是以前使用 ObjectOutputStream 编写的序列化对象文件。您可能想改用 InputStreamReader
我尝试使用 InputStreamreader,但显然我将使用的对象不适用于这种类型的输入法
--------库存是数据项的排序列表(ADT排序列表实现为数据项的链表),按每个项目所代表的标题排序。
-------- 每个库存项目包含一个标题、一个有值、一个想要值和一个客户列表(等待列表)
public static void main(String[] args)
{
//
// Loading from the inventory.dat
//
try {
FileInputStream fis = new
FileInputStream("inventory.dat");
ObjectInputStream ois = new ObjectInputStream(fis);
Object o = ois.readObject();
inventory = (SortedList)o;
}
catch (FileNotFoundException fnfe) {
inventory = new SortedList();
}
catch (Exception e) {
System.out.println(e);
}