这是我从服务器获得的响应:
{
result = {
blankfill = "[[1, [u'32354'], False, 7]]";
choice = "[[13, [3], False, 11], [10, [0], False, 3], [9, [1], False, 3], [2, [2], False, 4], [3, [1], False, 3], [1, [2], False, 3]]";
spendTime = 26;
};
retcode = 0;
subjectid = 1;
submittime = "2016-05-24T15:21:50.784";
}
choice
是我要转换为的字符串NSArray
,它还包含嵌套数组。
这是我尝试的代码:
NSString *jsonString = [responseObject[@"result"] objectForKey:@"choice"];
NSData *data = [jsonString dataUsingEncoding:NSUTF8StringEncoding];
NSArray *arr = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];
当前,arr
始终为零。
您将需要更改False
为false
字符串中的所有位置。然后它将解析为JSON。
(不过,似乎在服务器端出了点问题。大概这应该是从JSON数组开始的,并且由于此大小写错误,它改为以字符串形式到达。)
NSString* s = @"[[13, [3], false, 11], [10, [0], false, 3], [9, [1], false, 3], [2, [2], false, 4], [3, [1], false, 3], [1, [2], false, 3]]";
NSData *data = [s dataUsingEncoding:NSUTF8StringEncoding];
NSError* err;
NSArray *arr = [NSJSONSerialization JSONObjectWithData:data options:0 error:&err];
NSLog(@"%@", arr);
日志:
(
(
13,
(
3
),
0,
11
),
(
10,
(
0
),
0,
3
),
(
9,
(
1
),
0,
3
),
(
2,
(
2
),
0,
4
),
(
3,
(
1
),
0,
3
),
(
1,
(
2
),
0,
3
)
)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句