我正在尝试将Mac OS 罗马字符串转换为 UTF8 字符串:
MacRoman: OneBW/1 Schwarzwei§:
我正在使用这些调用:
nBufLen = MultiByteToWideChar(CP_MACCP, 0, macRomanString.c_str(), -1, NULL, 0);
MultiByteToWideChar(CP_MACCP, 0, macRomanString.c_str(), -1, tempWchar, nBufLen);
在此刻:
tempWhar = OneBW/1 Schwarzweiß:
现在我打这个电话:
WideCharToMultiByte(CP_UTF8, 0, tempWchar, -1, temp, nBufLen, NULL, NULL);
我期望temp
使用 UTF 8,但我得到了返回值0
,这是不成功的翻译,一些字符串在temp
. 我怎么知道 string intemp
是 UTF 格式?
我是以正确的方式做的还是缺少了什么?谢谢。