Objective-C-将条目从NSDictionary添加到NSMutableDictionary
尝试将对象从Objective-C-将条目从NSDictionary添加到NSMutableDictionary,objective-c,ios,json,nsdictionary,nsmutabledictionary,Objective C,Ios,Json,Nsdictionary,Nsmutabledictionary,尝试将对象从NSDictionary加载到NSMutableDictionary时遇到问题-代码如下: dictListData = [[NSMutableDictionary alloc] initWithCapacity:200]; 似乎tempDataset是一个NSArray类。Flink关于它是一个NSArray类的回答应该是正确的。另外,如果您真的需要将NSDictionary转换为NSMutableDictionary,那么使用myDictionary.mutableCopy,
NSDictionary
加载到NSMutableDictionary
时遇到问题-代码如下:
dictListData = [[NSMutableDictionary alloc] initWithCapacity:200];
似乎
tempDataset
是一个NSArray
类。Flink关于它是一个NSArray类的回答应该是正确的。另外,如果您真的需要将NSDictionary
转换为NSMutableDictionary
,那么使用myDictionary.mutableCopy
,请发布json数据或nslog JSONResultDictions,您可以看到tempDataset是什么类型的类:nslog(@“%@,[tempDataset className]);或者设置断点并查看调试器中的断点。谢谢,我已经为JSONResultDisct添加了NSLog输出。tempDataset的类名也是u NSCFArray??json的结果部分不是一个对象,而是一个数组。因此它将被反序列化到NSArray。因此,要么您必须更改数据,要么将目标容器更改为NS(可变)数组。非常感谢所有的评论,我认为我可以使用NSMUTABLEARRY,事实上这可能对我更好。谢谢
NSError *jsonError = nil;
NSDictionary *jsonResultDict = [NSJSONSerialization JSONObjectWithData:[httpRequestCopy responseData] options:kNilOptions error:&jsonError];
NSDictionary *tempDataset = [[jsonResultDict objectForKey:@"result"] objectAtIndex:0];
NSLog(@"tempDataset = %@", tempDataset);
[dictListData addEntriesFromDictionary:tempDataset]; // <-- Error here
jsonResultDict = {
result = (
(
{
stCode = 000477065;
stDesc1 = "TIMER KNOB";
stQtyFree = 0;
stQtyInStock = 0;
},
{
stCode = 0010311;
stDesc1 = "DBLE TAPER CHUCK CAP";
stQtyFree = 10;
stQtyInStock = 10;
},
{
stCode = "0016-103";
stDesc1 = "1/8 I.D";
stQtyFree = 0;
stQtyInStock = 0;
},
{
stCode = "0016-104";
stDesc1 = "1/4 I.D";
stQtyFree = 0;
stQtyInStock = 0;
},
{
stCode = "0016-157";
stDesc1 = "1/8 x 1/16 X 1/8 TEE";
stQtyFree = 0;
stQtyInStock = 0;
}
)
);
}