objective-c – NSJSONSerialization中未转义的控制字符

前端之家收集整理的这篇文章主要介绍了objective-c – NSJSONSerialization中未转义的控制字符前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有这个需要解析的 JSON http://www.progmic.com/ielts/retrive.php.当我使用NSJSONSerialization时,我得到了“未出现的角色1981周围的控制角色”错误.

我需要知道:

>未转义的控制角色究竟是什么?是否有清单或什么?
>我如何摆脱这个错误?最简单的方法

提前致谢.

解决方法

添加了此方法以从检索到的字符串中删除未转义的字符:
- (NSString *)stringByRemovingControlCharacters: (NSString *)inputString 
{ 
    NSCharacterSet *controlChars = [NSCharacterSet controlCharacterSet]; 
    NSRange range = [inputString rangeOfCharacterFromSet:controlChars]; 
    if (range.location != NSNotFound) { 
        NSMutableString *mutable = [NSMutableString stringWithString:inputString]; 
        while (range.location != NSNotFound) { 
            [mutable deleteCharactersInRange:range]; 
            range = [mutable rangeOfCharacterFromSet:controlChars]; 
        } 
        return mutable; 
    } 
    return inputString; 
}

收到NSData后,我将其转换为NSString,调用上面的方法获取一个带有删除控制字符的新字符串,然后再将新的NSString转换为NSData进行进一步处理.

猜你在找的C&C++相关文章