繁体   English   中英

如何将JSON数组转换为NSArray

[英]How to convert a JSON array into an NSArray

我一直在寻找如何将JSON数组转换为NSArray的麻烦。

我有一个php脚本,它创建一个数组,该数组转换为JSON,然后将其发送并存储到如下所示的NSString中:

[1,2,3,4]

我的问题是我需要将其放入int的NSArray中。 一个人怎么做?

谢谢!

您应该查看NSJSONSerialization类的文档。

您可以将其从远程调用接收到的NSData它是JSON格式的字符串)传递给它,并接收其中包含的数组或字典。

NSObject *o =[NSJSONSerialization JSONObjectWithData:data 
                                             options:NSJSONReadingMutableContainers 
                                               error:&error];

// other useful "options":
// 0 
// NSJSONReadingMutableLeaves
// NSJSONReadingMutableLeaves | NSJSONReadingMutableContainers

然后,您应该检查一下o是否属于您出于理智目的而期望的类型

如果我想快速将其分解成一个数组,我会这样做:

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];

将SBJson导入您的项目中(将其拖放)

#import "SBJson.h"

然后在哪里收到来自php文件的JSON响应

NSArray *array = [responseString JSONValue];

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM