因此 NSXMLParser 在使用 Windows-1252 编码器解析字符串时存在问题。现在我确实在此页面上找到了将其转换为 NSUTF8StringEncoding 的解决方案。但现在它遇到了无法解析的字符。
所以我发现如果我转义特殊字符然后在解析后将其传输回来,它会起作用。例如:
string = [string stringByReplacingOccurrencesOfString:@":" withString:@"__58__"];
由于允许使用 _ 字符而不会出现解析器错误,并且在 NSXMLParser 中,我可以将值传输回正确的字符。
那么有没有一种方法可以遍历所有 ASCII 字符,以便替换所有特殊字符(当然除了 <、> 和 _)?