我有一个XML文件,其开头有UTF-8 BOM标记(EF BB BF
)。
它还包含encoding
<?xml version="1.0" encoding="UTF-8" ?>
。
我正在尝试使用IXMLDOMDocument::LoadXML
加载此XML文件,但无法加载此文档。如果我删除BOM标记,它可以完美地工作。
我的问题在这种情况下使用BOM标记是错误的还是MSXML的错误(确切地说是MSXML6)?
答案 0 :(得分:5)
IXMLDOMDocument::loadXML
方法需要BSTR
,它是UTF-16编码的。有关该问题的讨论,请参阅this page。
我建议改用IXMLDOMDocument::load
,它有各种不需要UTF-16的重载。