我有一个从 MSXML DOM 中提取的变体 bstr,所以它是 UTF-16。我试图弄清楚这种转换会发生什么默认编码:
VARIANT vtNodeValue;
pNode->get_nodeValue(&vtNodeValue);
string strValue = (char*)_bstr_t(vtNodeValue);
通过测试,我相信默认编码是 Windows-1252 或 Ascii,但不确定。
顺便说一句,这是我正在修复并将变体转换为 wstring 并通过调用 WideCharToMultiByte 进行多字节编码的代码块。
谢谢!