由于来自某个服务器的 php 查询,我正在获取我的 xml 文件。当我将结果数据打印到控制台时,我得到了结构良好的 xml 文件。当我尝试使用 NSXMLParser 解析它时,它返回带有代码 4 的 NSXMLParserErrorDomain - 空文档。我看到它无法解析的 xml 在关闭 xml 标头的“>”标记后立即具有 BOM(字节顺序标记)序列。问题是如何摆脱 BOM 序列。我试图用这样的 BOM 字节创建一个字符串:
const UInt8 bom[3] = {0xEF, 0xBB, 0xBF};
NSString *bomString = [[NSString alloc] initWithData:[NSData dataWithBytes:(const void *)bom length:3] encoding:NSUTF8StringEncoding];
NSString *noBOMString = [theResult stringByReplacingOccurrencesOfString:bomString withString:@" "];
但由于某种原因它不起作用。有 xml,在根元素之后有这个序列。在这种情况下,NSXMLParser 成功解析了 xml。Safari 会忽略这些字符。所以 Xcode 调试器。请帮忙!
谢谢,
纳瓦