转换为NSArray后,JSOn响应得到的是空值
JSON Response :
JSON Log :
[ { "0": "41", "intid": "41", "1": "\u8a00\u3046", "varfirstname": "\u8a00\u3046", "2": "test", "varlastname": "test", "3": "\u5730", "varusername": "\u5730", "4": "[email protected]", "varemailid": "[email protected]", "5": "qwert", "varpassword": "qwert", "6": "12345", "varmobileno": "12345", "7": "Enable", "mobileMessage": "Enable", "8": "", "varphoneno": "", "9": "Enable", "enumstatus": "Enable", "10": "2013-01-30", "date_insert": "2013-01-30", "11": "2013-01-30", "date_edit": "2013-01-30", "12": "210.211.252.1", "varipaddress": "210.211.252.1" } ]
转换NSArray如下:
// Create new SBJSON parser object SBJSON *parser = [[SBJSON alloc] init]; NSArray *array = (NSArray *) [parser objectWithString:json_string error:nil]; NSLog(@"Array === %@",array);
Array显示数据:
Log :
Array === ( { 0 = 41; 1 = ""; 10 = "2013-01-30"; 11 = "2013-01-30"; 12 = "210.211.252.1"; 2 = test; 3 = ""; 4 = "[email protected]"; 5 = qwert; 6 = 12345; 7 = Enable; 8 = ""; 9 = Enable; "date_edit" = "2013-01-30"; "date_insert" = "2013-01-30"; enumstatus = Enable; intid = 41; mobileMessage = Enable; varemailid = "[email protected]"; varfirstname = ""; varipaddress = "210.211.252.1"; varlastname = test; varmobileno = 12345; varpassword = qwert; varphoneno = ""; varusername = ""; })
转换** VarfirstName **如下:
NSDictionary *dataObject=[array objectAtIndex:0]; NSString *status = [dataObject objectForKey:@"varfirstname"]; NSLog(@"status -- %@",status); NSString *myDecodedS = status; NSString *myDecoded = [myDecodedS stringByReplacingPercentEscapesUsingEncoding:NSUTF16StringEncoding]; NSLog(@"HIIii %@",myDecoded);
解决方案:
把json复制到text文件中,转换回数据,使用NSJSONSerialization
类,
- (void)viewDidLoad { [super viewDidLoad]; NSError *error; NSData *data = [[NSData alloc]initWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"json" ofType:@"txt"]]; id jsonObj = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:&error]; NSLog(@"%@",jsonObj); NSLog(@"%@",jsonObj[0][@"varfirstname"]); }
log输出如下:
2013-02-01 22:47:40.361 JSONExperiment[4200:c07] ( { 0 = 41; 1 = "\U8a00\U3046"; 10 = "2013-01-30"; 11 = "2013-01-30"; 12 = "210.211.252.1"; 2 = test; 3 = "\U5730"; 4 = "[email protected]"; 5 = qwert; 6 = 12345; 7 = Enable; 8 = ""; 9 = Enable; "date_edit" = "2013-01-30"; "date_insert" = "2013-01-30"; enumstatus = Enable; intid = 41; mobileMessage = Enable; varemailid = "[email protected]"; varfirstname = "\U8a00\U3046"; varipaddress = "210.211.252.1"; varlastname = test; varmobileno = 12345; varpassword = qwert; varphoneno = ""; varusername = "\U5730"; } ) 2013-02-01 22:47:40.363 JSONExperiment[4200:c07] 言う