我正在尝试将NSDictionary中的值解析为本地数据模型。
以下是字典的内容。
Printing description of userProfile:
{
"created_at" = "2014-01-16T09:08:03.012Z";
"first_name" = FirstName;
id = 74;
"last_name" = LastName;
phone = 09876543232;
photo = "<null>";
"updated_at" = "2014-01-16T12:40:18.143Z";
"user_id" = 84;
}
这是我用来解析字符串的内容:
self.profileId = [[userProfile objectForKey:@"id"] intValue];
self.firstName = (NSString*)[userInfo objectForKey:@"first_name"];
self.lastName = (NSString*)[userInfo objectForKey:@"last_name"];
self.phoneNumber = (NSString*)[userInfo objectForKey:@"phone"];
这将在最后三个字段中返回nil。但是,如果我使用此方法来解析数据,它将实际工作。
NSArray*keys=[userProfile allKeys];
self.firstName = [userProfile objectForKey:[keys objectAtIndex:3]];
知道为什么会这样吗?
答案 0 :(得分:0)
您正在此处访问“userProfile”
self.profileId = [[userProfile objectForKey:@"id"] intValue];
但是在这里访问'userInfo'
self.firstName = (NSString*)[userInfo objectForKey:@"first_name"];
self.lastName = (NSString*)[userInfo objectForKey:@"last_name"];
self.phoneNumber = (NSString*)[userInfo objectForKey:@"phone"];
这是一个错字还是你有一个名为'userInfo'的对象你错误地使用?