我过去序列化了一个没有serialUID的对象数组,但与此同时我改变了类——我添加了一个 boolean 值。 现在我无法恢复对象。 我尝试重新创建旧类(从 svn)并删除有关“无串行 uid”的警告,以便获取从 Eclipse 生成的串行UID。我尝试将其粘贴到我的新版本的类(class)中,但仍然失败。我不确定这是否是因为删除警告会更改生成的序列号。 接下来我尝试使用“serialver”工具,但我不断收到“找不到类”错误。
有人可以为我拼写出我应该在命令行中输入什么,因为我不完全确定在类路径中输入什么? 我用这个作为我的模板: Serialver -classpath C:\foo\classes.jar com.bar.FooMessage 我的工作空间是 D:\blabla\androidworkspace 项目是 Shows 所以在 eclipse 中它说: 显示-src-xyz-show.java 我从 C:\Program Files (x86)\Java\jdk1.6.0_24\bin 运行命令
最佳答案
这里很好地解释了序列化的工作原理 http://www.javaworld.com/community/node/2915
你需要做的是:
关于java - 反序列化对象 - 类已更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9776800/