我刚刚获取数据,但当我尝试将其附加到 NSData 的字符串时,编译器出现异常错误。 我的代码是这样的:
NSDictionary *allDAtaDictionary = [NSJSONSerialization JSONObjectWithData:_webData options:0 error:nil];
NSString *jSonStatus = [allDAtaDictionary objectForKey:@"status"];
if([jSonStatus isEqualToString:@"OK"])
{
NSDictionary *results = [allDAtaDictionary objectForKey:@"user_details"];
NSLog(@"User Details : %@",results);
一切正常,直到这些行开始:
NSString *userID = [results objectForKey:@"userID"];
错误输出是:
* Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFArray objectForKey:]: unrecognized selector sent to instance 0x9485a00'
这是我的 jSOn 输出,NSLog(@"User Details : %@",results);
User Details : (
{
userCity = California;
userCountry = "United States";
userDOB = "1988-03-02";
userDetails = "";
userEmail = "xxx@xxx.com";
userFBID = 715296184;
userFullName = "John Mc Grager";
userGender = Male;
userID = 70;
userLastLoginTime = "2013-05-29 10:51:27";
userLatitude = "37.7858";
userLongtitude = "-122.406";
userNickName = warblader;
userPassword = "";
userStatus = 1;
userToken = "";
}
)
最佳答案
似乎 JSON 是一个包含一个字典的数组。您至少在这里向我们展示了什么。
所以
NSArray *results = [allDAtaDictionary objectForKey:@"user_details"];
NSLog(@"User Details : %@",results);
assert(results.count>0);
NSDictionary *user = [results objectAtIndex:0];
NSString *userID = [results objectForKey:@"userID"];
NSLog(@"%@", userID);
关于ios - 将 JSONValue 中的 NSDictionary 数据解析为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16808366/