Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在iphone上存储数据的最佳方法是使用一组必须从程序中更改的预加载值_Iphone_Core Data_Plist - Fatal编程技术网

在iphone上存储数据的最佳方法是使用一组必须从程序中更改的预加载值

在iphone上存储数据的最佳方法是使用一组必须从程序中更改的预加载值,iphone,core-data,plist,Iphone,Core Data,Plist,在iphone上使用一组预加载值存储数据的最佳方式是什么?这些值也必须从程序中更改 我们是否可以将值预加载到coredata数据库中。如果是,如何使用coredata实现…如果使用Core数据,您可以在创建NSPersistentStoreCoordinator之前检测您的Core数据备份文件是否存在,如果没有,请在创建持久存储协调器之前将包中的默认版本复制到位,或者在创建NSManagedObjectContext之后使用代码插入必要的对象。对于后者,可能是这样的: BOOL insertDe

在iphone上使用一组预加载值存储数据的最佳方式是什么?这些值也必须从程序中更改


我们是否可以将值预加载到coredata数据库中。如果是,如何使用coredata实现…

如果使用Core数据,您可以在创建NSPersistentStoreCoordinator之前检测您的Core数据备份文件是否存在,如果没有,请在创建持久存储协调器之前将包中的默认版本复制到位,或者在创建NSManagedObjectContext之后使用代码插入必要的对象。对于后者,可能是这样的:

BOOL insertDefaultObjects = NO;
if (managedObjectContext == nil) {
    if (persistentStoreCoordinator == nil) {
        NSString *storePath = /* ... */;
        insertDefaultObjects = ![[NSFileManager defaultManager] fileExistsAtPath:storePath];

        persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:managedObjectModel];
        /* ... and so on ... */
    }

    managedObjectContext = [[NSManagedObjectContext alloc] init];
    [managedObjectContext setPersistentStoreCoordinator:persistentStoreCoordinator];

    if (insertDefaultObjects) [self insertDefaultObjectsIntoContext:managedObjectContext];
}
insertDefaultObjectsIntoContext:
只需使用标准的核心数据方法创建必要的对象并将其保存到核心数据存储中


如果您正在使用其他类型的数据存储,例如xml文件、plist等,同样的一般思路是:检查文件是否存在于您的文档或应用程序支持目录中,或者检查NSUserDefaults中的“default values copied”键(如果用户可以删除该文件),如果需要,请从应用程序包中复制默认版本。

在这种情况下,每次单击都会在运行时向数据库中插入一个值。例如,我询问如何存储库中所有书籍的列表及其详细信息,首先是它自己,然后在程序执行期间,我需要更改书籍属性示例为此,您可以使用sqlite数据库。1)2)