我一直无法找到如何将JSON数组转换为NSArray。
我有一个php脚本,它创建一个转换为JSON的数组,然后将其发送并存储到NSString中,如下所示:
[1,2,3,4]
我的问题是我需要把它变成一个整体的NSArray。如何做到这一点?
谢谢!
答案 0 :(得分:6)
您应该查看NSJSONSerialization类的文档。
您可以将从JSON格式的字符串远程调用接收的NSData
交给它,并接收它包含的数组或字典。
NSObject *o =[NSJSONSerialization JSONObjectWithData:data
options:NSJSONReadingMutableContainers
error:&error];
// other useful "options":
// 0
// NSJSONReadingMutableLeaves
// NSJSONReadingMutableLeaves | NSJSONReadingMutableContainers
然后,您应该检查o
是否符合您出于理智目的的类型
答案 1 :(得分:4)
如果我想快速将其分解为数组,我会这样做:
NSString * jstring = @"[1,2,3,4]"; //your json string
jstring = [jstring stringByReplacingOccurrencesOfString:@"[" withString:@""];
jstring = [jstring stringByReplacingOccurrencesOfString:@"]" withString:@""];
NSArray * intArray = [string componentsSeparatedByString:@","];
//you could create your int from the array like this
int x = [[intArray objectAtIndex:0]intValue];
答案 2 :(得分:0)
在项目中导入SBJson(拖放)
#import "SBJson.h"
然后从php文件
收到JSON响应NSArray *array = [responseString JSONValue];