如何将JSON数组转换为NSArray
我一直无法找到如何将JSON数组转换为NSArray。如何将JSON数组转换为NSArray
我有一个创建被转换成JSON然后将其发送并存储到,看起来一个NSString数组中的PHP脚本,如:
[1,2,3,4]
我的问题是,我需要做的是为一个NSArray的整数。如何做到这一点?
谢谢!
如果我想很快打破成JSON响应阵列我会这样做:
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];
yea ...不,他不会有int数组,他会有一个NSStrings数组。 – Ahti 2012-02-02 01:01:45
对不起,你将不得不把字符串作为intValue – Louie 2012-02-02 16:38:03
谢谢!这很好。但我怎么能把字符串作为intValues? – user1072264 2012-02-02 18:04:04
导入SBJson在您的项目(拖放)
#import "SBJson.h"
然后,你收到来自PHP文件
NSArray *array = [responseString JSONValue];
这适用于解码php中的JSON,但是当我将它发送到NSString时,所有出现的都是 Array 另外,我想我将不得不在iOS应用程序中编辑我的.m文件,而不是php。 – user1072264 2012-02-01 23:06:23
aha。我的错。 Objective-c中有一个很好的json库:https://github.com/stig/json-framework/ – 2012-02-01 23:09:38
你应该看看的文档类。
您可以将它从远程调用(它是JSON格式的字符串)接收的NSData
传递给它,并接收它包含的数组或字典。
NSObject *o =[NSJSONSerialization JSONObjectWithData:data
options:NSJSONReadingMutableContainers
error:&error];
// other useful "options":
// 0
// NSJSONReadingMutableLeaves
// NSJSONReadingMutableLeaves | NSJSONReadingMutableContainers
,那么你应该检查o
是你期待的理智目的类型的
这应该是人们在iOS中使用JSON的方式,因为更多人在其设备上安装iOS5。 – colincameron 2012-02-02 10:51:49
请问您的应用程序或JSON字符串? – JoePasq 2012-02-01 23:18:07
有没有这样的事情作为一个NSArray的整数。 NSArrays,NSDictionarys和NSSets可能只包含ObjC风格的对象,所以使用任何JSON-Frameworks(我更喜欢JSONKit)将会是NSNumbers的NSArray。 – Ahti 2012-02-02 01:03:24