[英]I send some data to a webservice, it returns some JSON as NSData. How to convert to Dict?(iOS 4.3)
我将一些凭据发送到Web服务。
我可以将响应作为NSData或NSString来获取。
将(NSData或NSString)JSON转换为NSDictionary以便我可以处理的简单方法是什么?
针对iOS4.3的构建非常感谢,-Code
用这个 :
NSString *urlString = [NSString stringWithFormat:kURLString,self.chapter,self.page];
NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:urlString]];
[urlRequest setHTTPMethod:@"POST"];
[urlRequest setHTTPBody:[urlString dataUsingEncoding:NSISOLatin1StringEncoding]];
NSData* responseData = [NSURLConnection sendSynchronousRequest:urlRequest returningResponse:nil error:nil];
NSString *responseString = [[NSString alloc] initWithData:responseData encoding:NSISOLatin1StringEncoding];
NSDictionary* result = [(NSDictionary*)[responseString JSONValue] objectForKey:@"Result"];
我用SBJson
NSArray *arrObj = (NSArray*)[[JsonParser sharedJsonParser] getObjectsFromJsonString:responseString];
响应字符串是JSON字符串
使用链接http://github.com/stig/json-framework/downloads下载SBJsonParser Framework,并将所需的类添加到项目(SBJsonParser.h)。
导入SBJsonParser.h并使用以下代码,
SBJsonParser *parser = [[SBJsonParser alloc] init];
//dictionary with name,id
NSDictionary *jsonObject = [parser objectWithString:jsonString error:NULL];
//name array
NSMutableArray *nameArray = [[NSMutableArray alloc]init];
for (NSMutableDictionary *dic in jsonObject){
[nameArray addObject:[dic valueForKey:@"name"]];
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.