NSJSONSerialization中未转义的控制字符

Uma*_*oon 7 escaping objective-c nsjsonserialization

我有这个JSON http://www.progmic.com/ielts/retrive.php,我需要解析.当我使用NSJSONSerialization进行操作时,我得到"角色1981周围未转义的控制字符"错误.

我需要知道:

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

提前致谢.

Uma*_*oon 17

我添加了此方法以从检索到的字符串中删除未转义的字符:

- (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; 
} 
Run Code Online (Sandbox Code Playgroud)

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