这里最好的模式似乎是使用 XML 文件来“播种”您的 Core Data 数据库。这只是第一次发生。之后,您将不再使用您的 XML 文件,而只需更新和同步您的核心数据存储。
这比生成 XML 要好得多。XML 文件(如属性列表)的问题在于,您必须为每个小的增量更改编写整个文件。如果您同步到某个在线商店,这可能需要太多时间才能实用。
假设您可以从 XML 文件中获取基础对象,只需遍历对象并一一插入 Core Data。
for (NSDictionary *dict in xmlArray) {
Entity *newObject = [NSEntityDescription
insertNewObjectForEntityForName:@"Entity"
inManagedObjectContext:self.managedObjectContext];
newObject.attribute1 = [dict objectForKey:@"attribute1"];
newObject.attribute2 = [dict objectForKey:@"attribute2"];
// etc...
}
[self.managedObjectContext save:nil];