【发布时间】:2016-02-03 00:51:14
【问题描述】:
所以我正在尝试写入和读取数据文件,并在读取数据文件后声明一个类型为“GroceryStore”的新变量。运行程序时,我不断收到强制转换异常错误。有人可以向我解释为什么会发生这种情况以及我该如何解决它?谢谢。
这是我写数据文件的方法:
{
FileOutputStream file = null;
ObjectOutputStream outStream = null;
file = new FileOutputStream(new File(filename));
outStream = new ObjectOutputStream(file);
outStream.writeObject(store1);
System.out.print(filename + " was written\n");
}
这是我读取数据文件的方法
{
FileInputStream file = null;
ObjectInputStream inStream = null;
file = new FileInputStream(new File(filename));
inStream = new ObjectInputStream(file);
GroceryStore newStore = (GroceryStore) inStream.readObject();
store1 = newStore;
System.out.print(filename + " was read\n");
}
【问题讨论】:
-
请发布您遇到的异常情况
-
store1的类型是什么? -
@ManosNikolaidis 我收到了 write 方法的不可序列化异常和 read 方法的强制转换异常。
-
@Suds2 如果你需要帮助,你将不得不分享
GroceryStore的代码 -
写作时你永远不会
flush或close。
标签: java