c++ cstring utf-8 转unicode

c++中将cstringutf-8的字符串转成unicode各位大神... c++中 将cstring utf-8的字符串 转成unicode 各位大神 展开
 我来答
空雪梦见
推荐于2017-10-09 · TA获得超过5597个赞
知道大有可为答主
回答量:2522
采纳率:75%
帮助的人:1189万
展开全部
#include <atlstr.h>
#include <windows.h>
int main()
{
    CStringA strUtf8("\xE8\xBF\x99\xE6\x98\xAF\xE4\xB8\x80\xE4\xB8\xAA\xE5\xAD\x97\xE7\xAC\xA6\xE4\xB8\xB2");
    CStringW strUnicode;
    
    int nStrUtf8Len = strUtf8.GetLength();
    int nStrUnicodeLen;
    
    nStrUnicodeLen = MultiByteToWideChar(CP_UTF8, 0, static_cast<const char*>(strUtf8), nStrUtf8Len, 0, 0);
    wchar_t* pStrUnicode = strUnicode.GetBufferSetLength(nStrUnicodeLen);
    MultiByteToWideChar(CP_UTF8, 0, static_cast<const char*>(strUtf8), nStrUtf8Len, pStrUnicode, nStrUnicodeLen);
    strUnicode.ReleaseBuffer();
    
    MessageBoxW(0, static_cast<const wchar_t*>(strUnicode), L"test", MB_OK);
    
    return 0;
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式