UniCode转UTF8

char *UniCodeToUTF8(CString strUniCode)
{
    LPWSTR pWstr = new wchar_t[strUniCode.GetLength() + 1];
    wcscpy(pWstr, T2W((LPTSTR)strUniCode.GetString()));

    //获取转完后的长度
    int nLen = WideCharToMultiByte(CP_UTF8, 0, pWstr, -1, NULL, NULL, NULL, NULL);
    char *szUtf8 = new char[nLen + 1];
    memset(szUtf8, 0, nLen + 1);

    //转换
    WideCharToMultiByte(CP_UTF8, 0, pWstr, -1, szUtf8, nLen, NULL, NULL);
    delete[] pWstr;
    return szUtf8;
}

猜你喜欢

转载自www.cnblogs.com/coolcpp/p/unicode2utf-8.html