获取值 - 目标C
我有这样的JSON响应字符串:获取值 - 目标C
{"d":"{\"ID_usuario\":\"000130\",\"Nombre\":null,\"Vipxlo\":0,\"Provmun\":null,\"Descuentos\":null,\"Listaviplocal\":null}"}`
有了这个代码:
- (void)connectionDidFinishLoading:(NSURLConnection *)connection
{
//Check valid signal
connection = nil;
NSString *responseString = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];
//data =nil;
NSArray *jsonArray = [responseString JSONValue];
我该怎么办呢?
这JSON应导致字典
NSDictionary *jsonDict = [responseString JSONValue];
然后使用:
[jsonDict objectForKey:@"d"];
您好我已经添加了NSString * userName = [result objectForKey:@“Nombre”];但是我的“变量不是此时的CFString”值。你是为什么呢?谢谢你的帮助。 – roof 2012-03-19 01:00:17
对不起,但是,...我没有任何JSONValue类。有人可以建议我如何获得这门课程吗? – sensorario 2012-12-13 08:29:21
@SimoneDemoGentili查看cortez的回答。 OP使用第三方工具,iOS 5+不需要。 – vikingosegundo 2012-12-13 12:12:07
尝试使用适用于iOS的SBJasonParser库。
然后,您可以使用此代码(对于所有iOS版本):
SBJsonParser* parser = [[[SBJsonParser alloc] init] autorelease];
NSDictionary* myDict = [parser objectWithString: responseString];
注:上面的代码有JSON字典,但你试图访问它作为一个数组。
当你负担得起iOS 5的时候,你应该试试NSJSONSerialization。
你的代码可能看起来像这样,但我建议先阅读文档。
NSArray* jsonArray = [NSJSONSerialization JSONObjectWithData:responseData options:NSJSONReadingMutableLeaves error:someError]
NSJsonSerializattion是最好的和优化的解决方案相比,任何其他框架。但[这里](http://blog.skulptstudio.com/nsjsonserialization-vs-sbjson-performance)我找到了很好的解决方案,以确定最好的SBJson和NSJSONSerialization (在发布ios5.0之前,SBJSON是处理Json对象的良好框架)。 – iDroid 2012-03-19 04:25:13
看起来你做到了。你还需要什么? – 2012-03-18 21:34:08