将核心数据模型复制到新项目,难以理解的存档

时间:2014-04-11 15:36:41

标签: ios core-data

我正在使用Apple App Store中的现有应用程序并希望从头开始,但不希望现有用户丢失存储在核心数据模型中的数据。

我使用核心数据开始了一个新项目。将核心数据模型从旧项目复制到新项目中。删除了新项目创建的样板核心数据模型。从旧项目复制托管对象类。在AppDelegate中进行必要的更改以匹配我复制的核心数据模型。当我第一次在模拟器中运行时它启动正常。然后我将我的iPad中的实时数据复制到模拟器文档目录中并尝试再次运行。那是我收到错误“[NSKeyedUnarchiver initForReadingWithData:]:难以理解的档案”我不知道我做错了什么或者我错过了这一步。

谢谢,

罗布

1 个答案:

答案 0 :(得分:0)

听起来像是在咬你。复制时,请确保在文档目录中删除最多三个与sqlite文件具有相同文件名的文件(一个将是您的sqlite文件)。然后复制新的。

WAL有第二次启动时会尝试使用的日志文件,它们与您复制的商店不兼容。

更新

如果您在NSFetchedResultsController调用时收到错误并且您在创建Core Data堆栈时有正确的错误记录,那么这不是SQLite文件本身的问题,但是内部数据有问题它

您是否有任何二元对象或可转换对象?