gpt4 book ai didi

iphone - 在 iOS 中使用 objectForKey 解析带有 NSJSONSerialization 类的 json

转载 作者:可可西里 更新时间:2023-11-01 04:42:24 24 4
gpt4 key购买 nike

我是 iOS 开发新手。我使用此代码连接到我的 REST Web 服务并获取 Json 格式的数据。

    NSString *url=@"URL_Address";

NSURLRequest *theRequest = [NSURLRequest requestWithURL:[NSURL URLWithString:url]];

NSURLResponse *resp = nil;
NSError *err = nil;

NSData *response = [NSURLConnection sendSynchronousRequest: theRequest returningResponse: &resp error: &err];

// NSString * theString = [[NSString alloc] initWithData:response encoding:NSUTF8StringEncoding];
// NSLog(@"response: %@", theString);

NSArray *jsonArray = [NSJSONSerialization JSONObjectWithData: response options: NSJSONReadingMutableContainers error: &err];

if (!jsonArray) {
NSLog(@"Error parsing JSON: %@", err);
} else {
for(NSDictionary *item in jsonArray) {
NSLog(@" %@", item);
NSLog(@"---------------------------------");
}
}

现在我想通过 objectForKey 将它们分开。我在循环中使用了这段代码:

NSString *name = [item objectForKey:@"name"];

它不起作用。我收到此错误:

2012-07-31 12:48:38.426 LearningAFNetworking[390:f803] -[__NSArrayM objectForKey:]: unrecognized selector sent to instance 0x6844460
2012-07-31 12:48:38.428 LearningAFNetworking[390:f803] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSArrayM objectForKey:]: unrecognized selector sent to instance 0x6844460'
*** First throw call stack:
(0x13c8022 0x1559cd6 0x13c9cbd 0x132eed0 0x132ecb2 0x2f40 0x2bf8 0xd9a1e 0x38401 0x38670 0x38836 0x3f72a 0x290b 0x10386 0x11274 0x20183 0x20c38 0x14634 0x12b2ef5 0x139c195 0x1300ff2 0x12ff8da 0x12fed84 0x12fec9b 0x10c65 0x12626 0x254d 0x24b5 0x1)
terminate called throwing an exception(lldb)

你能帮帮我吗?

最佳答案

您必须访问 item 数组的 0 项:

NSArray *mainArray = [item objectAtIndex:0];
(NSDictionary *obj in mainArray) {
NSString *name = [obj objectForKey:@"name"];
}

当您收到此错误:-[__NSArrayM objectForKey:] 时,您需要意识到您尝试访问的对象不是字典。它是一个数组 (__NSArrayM),因此您必须首先访问 0 索引,然后开始探索字典。

看看this很棒的教程,来自 Ray Wenderlich,解释了关于崩溃的一切。

关于iphone - 在 iOS 中使用 objectForKey 解析带有 NSJSONSerialization 类的 json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11738384/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com