遇到一个简单的objc问题,需要一些帮助。我正在向服务器发送一个查询,该服务器返回一个包含在jSON中的元组。只需使用字典对所有内容进行排序。
- (void)viewDidLoad
{
[super viewDidLoad];
Nodes *node = [Nodes new];
NSDictionary *jsonDict = [node nodeActivityforNode:@"17" withDates:nil and:nil];
NSDictionary *jsonActivityDict = [jsonDict objectForKey:@"activity"];
NSLog(@"activity?: %@", jsonActivityDict);
}
然后是调试转储
activity?:
(
(
"2013-05-21 16:58:32",
0
),
(
"2013-05-21 16:58:15",
0
),
(
"2013-05-21 16:57:59",
0
),
我正在尝试拆分逗号分隔值,这样我就可以将它们放在单独的int和string对象中,但只是想不出如何进入那里。任何帮助,将不胜感激。谢谢!
答案 0 :(得分:1)
“活动”数据看起来像一个数组数组,而不是字典。如果你知道你将总是得到三对值,并且你希望将这6个值放入6个单独的变量中,那么你可以这样做:
NSDictionary *jsonDict = [node nodeActivityforNode:@"17" withDates:nil and:nil];
NSArray *jsonActivities = [jsonDict objectForKey:@"activity"];
NSString *date1 = jsonActivities[0][0];
int int1 = [jsonActivities[0][1] intValue];
NSString *date2 = jsonActivities[1][0];
int int2 = [jsonActivities[1][1] intValue];
NSString *date3 = jsonActivities[2][0];
int int3 = [jsonActivities[2][1] intValue];
请注意,如果少于3组对,或者这三个“对”中的任何一对只有一个值而不是两个,则此代码将崩溃。