Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/27.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
Objective c 将NSMutableArray元素和内容保存到核心数据实体的最佳方法_Objective C_Core Data_Nsmutablearray - Fatal编程技术网

Objective c 将NSMutableArray元素和内容保存到核心数据实体的最佳方法

Objective c 将NSMutableArray元素和内容保存到核心数据实体的最佳方法,objective-c,core-data,nsmutablearray,Objective C,Core Data,Nsmutablearray,我只需要将包含数据的数组元素移动到核心数据;这是我的代码(userPreferences是我的CoreData实体): 问题是,如果我只在数组的第0行中有数据,当它移动第1行时,它会崩溃,因为第1行是空的。我相信有更好的方法可以做到这一点;我看过SO和谷歌,但没有发现任何具体的信息。任何帮助都将不胜感激。:-} 对循环使用。在循环中,使用属性名创建一个字符串,然后使用setValue:forKey:方法: NSUInteger count = [addlServicesArray count];

我只需要将包含数据的数组元素移动到核心数据;这是我的代码(userPreferences是我的CoreData实体):


问题是,如果我只在数组的第0行中有数据,当它移动第1行时,它会崩溃,因为第1行是空的。我相信有更好的方法可以做到这一点;我看过SO和谷歌,但没有发现任何具体的信息。任何帮助都将不胜感激。:-}

对循环使用
。在循环中,使用属性名创建一个字符串,然后使用
setValue:forKey:
方法:

NSUInteger count = [addlServicesArray count];
for (NSUInteger i=0; i<count; i++) {
    NSString *key = [NSString stringWithFormat:@"aAddlSvcs%lu",i];
    [userPreferences setValue:addlServicesArray[i] forKey:key];
}
nsuiger count=[addlServicesArray count];

对于(i=0;我能解释一下这段代码的更多用途吗?数组中的数据类型是什么?UserPreferences实体是如何定义的(除了
aAddlSvcsXX
属性以外的任何属性)?该实体可能有多少个实例?字符串;该实体有14个实例。每个实例有14个属性?或者一个实例有14个属性?每个属性包含一个唯一的服务,因此是的,每个都保存到一(1)个实体中它自己的属性中。好的。您可以选择a)有14个实例,每个实例只有一个字符串属性,或者b)将整个数组存储在1个实例的1个属性中?非常感谢。。。就这样!在创建字符串时,我必须做一个小小的更改,它是I+1,但它的工作原理与我所希望的一样D
NSUInteger count = [addlServicesArray count];
for (NSUInteger i=0; i<count; i++) {
    NSString *key = [NSString stringWithFormat:@"aAddlSvcs%lu",i];
    [userPreferences setValue:addlServicesArray[i] forKey:key];
}