iOS json数组解析
最近开始搞ios开发,需要解析json文件,而且还是数组,用ios自带的NSJSONSerialization解析了第一层,发现再往下解析是,已经不行了,经过调试发现,解析一次后,ios自动把json文件的“:”换成了“=”,还加了一些“\n”,还有空格,经过努力都改正之后都不行,实在没办法了自己就硬着头皮解决了一下,希望给大家分享一下。NSMutableString *strFile=[[NSMutableString alloc] initWithContentsOfFile:FILE_PATH encoding:NSUTF8StringEncoding error:nil];
NSMutableArray *arrayJson=[NSMutableArray arrayWithCapacity:42];
NSRange leftRange;
NSRange rightRange;
leftRange=[strFile rangeOfString:@"["];
leftRange.length=leftRange.location+1;
leftRange.location=0;
[strFile deleteCharactersInRange:leftRange];
rightRange=[strFile rangeOfString:@"]"];
rightRange.length=[strFile length]-rightRange.location;
[strFile deleteCharactersInRange:rightRange];
// NSLog(@"%@",strFile);
while(1)
{
NSString *tempString;
NSDictionary *tempDictionary;
rightRange=[strFile rangeOfString:@"}"];
tempString=[strFile substringWithRange:NSMakeRange(0, rightRange.location+1)];
NSData *tempData=[tempString dataUsingEncoding:NSUTF8StringEncoding];
tempDictionary=[NSJSONSerialization JSONObjectWithData:tempData options:kNilOptions error:nil];
[arrayJson addObject:tempDictionary];
if([tempString isEqualToString:strFile])
break;
[strFile deleteCharactersInRange:NSMakeRange(0, rightRange.location+2)];
}
--------------------编程问答-------------------- 分享快乐,学习学习. --------------------编程问答-------------------- 不是有专门的库的么……干啥这么累自己搞…… --------------------编程问答-------------------- 分享是伟大的 --------------------编程问答-------------------- --------------------编程问答-------------------- 各种库,sbjson,jsontouch,jsonkit,系统库等等 --------------------编程问答-------------------- J8毛,原生态的和第三方类库的一样好用!亲测,只有不会用,没有不好用 --------------------编程问答-------------------- 解析过n层的,用NSJSONSerialization和JSONKIT都没有遇到过问题。楼主把json贴出来我试试看 --------------------编程问答-------------------- 除 --------------------编程问答-------------------- sbjson 挺方便 --------------------编程问答-------------------- NSJSONSerialization好使 --------------------编程问答-------------------- 分享快乐!学习中。。。 --------------------编程问答-------------------- json c++够用了 --------------------编程问答-------------------- JasonKit效率很高~
补充:移动开发 , iPhone