使用JsonKit解析中文时注意事项

使用JsonKit解析中文时如果返回值为空,可能使用因为计算长度时不准确造成的。

解决方法:

NSString *pricePath = [[NSBundle mainBundle] pathForResource:@"CarSelectPrice" ofType:@"json"];
    NSString *priceStr = [[NSString alloc] initWithContentsOfFile:pricePath encoding:NSUTF8StringEncoding error:nil];
    NSLog(@"%@",priceStr);
   
    //计算包括中文字符串的长度,如果返回值为空。极有可能是这个值不正确造成的。
    NSInteger length = [[priceStr dataUsingEncoding:NSUTF8StringEncoding allowLossyConversion:YES] length];
    
    _allPriceArr = [NSMutableArray array];
    _allCarTypeArr = [NSMutableArray array];
    
    
    NSArray *tmpJson = [jsonDecoder objectWithUTF8String:(const unsigned char *)[priceStr UTF8String] length:(unsigned int)length];
    NSLog(@"priceArr = %@",_allPriceArr);


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。