2012-07-09 94 views
0

大家好我是一个新的iphone开发者。我收到了我所需的URL的响应,如下所示,我需要获得"CategoryID":1的名称和"CategoryID":2的名称都在单独的数组集合中。如何实现获取iphone中的JSON对象的代码?谢谢你得到响应 代码:如何实现获取iPhone中的JSON对象的代码?

theXML = [[NSString alloc] initWithBytes: [RoutData mutableBytes] length:[RoutData length] encoding:NSUTF8StringEncoding]; 
NSLog(@"---->>>>>>-->>>:%@",theXML); 

响应:

LocationTracking[1807:f803] ---->>>>>>-->>>:<?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><getGearLockerCategoriesResponse xmlns="http://tempuri.org/"><getGearLockerCategoriesResult><status>SUCCESS</status><errorType /><errorMessage /><jsonString>[{"CategoryID":1,"ItemCount":1,"level":1,"Name":"Boots","Description":"Boots descrition","childs":[{"CategoryID":2,"ItemCount":1,"level":2,"Name":"Cold Water","Description":"Cold Water Description","childs":[]}]}]</jsonString><serverTimestamp>63477507673796</serverTimestamp></getGearLockerCategoriesResult></getGearLockerCategoriesResponse></soap:Body></soap:Envelope> 

<jsonString> 

[{"CategoryID":1,"ItemCount":1,"level":1,"Name":"Boots","Description":"Boots 

descrition","childs":[{"CategoryID":2,"ItemCount":1,"level":2,"Name":"Cold 

Water","Description":"Cold Water Description","childs":[]}]}] 

</jsonString> 

<serverTimestamp>63477390375625</serverTimestamp> 

</DiveTravelerResponse> 
+1

获取NSMutableDictionary中的所有数据,然后设置条件。然后在条件基础上添加NSMutableArray然后从数组中获取值。 – Ayaz 2012-07-09 06:17:04

回答

0

NSJSONSerialization。如果您的JSON位于名为'str'的NSString中:

NSError *jsonError = nil; 
NSArray *rootObjectArray = [NSJSONSerialization JSONObjectWithData:[str dataUsingEncoding:NSUTF8StringEncoding] options:0 error:&jsonError]; 
if (rootObjectArray) 
{ 
    /* you have a foundation object */ 
} 
else 
{ 
    /* something went wrong */ 
    NSLog(@"jsonError: %@", [jsonError localizedDescription]); 
} 
+0

您好朋友我已经使用您的给定答案我的请求代码,但问题是当我实现的代码是像 NSError * jsonError = nil; NSArray * rootObjectArray = [NSJSONSerialization JSONObjectWithData:[theXML dataUsingEncoding:NSUTF8StringEncoding] options:0 error:&jsonError];但我得到的答复像2012-07-10 07:59:35.020 LocationTracking [1807:f803] --- ****** --- :(null)如何解决问题 – user1510990 2012-07-10 12:56:46