VC CString 转 UTF-8
浏览次数:562次 悬赏分:20 | 解决时间:2010-6-14 18:17 | 提问者:iamj_b
帮我写个函数 实现 CString 转 UTF-8 谢谢
最佳答案
//CP_ACP=ANSI,CP_UTF8=utf-8
CString CMarcoPolo_PriceSysApp::UTF8Convert(CString &str,int sourceCodepage,int targetCodepage)
{
int len=str.GetLength();
int unicodeLen=MultiByteToWideChar(sourceCodepage,0,str,-1,NULL,0);
wchar_t * pUnicode;
pUnicode=new wchar_t[unicodeLen+1];
memset(pUnicode,0,(unicodeLen+1)*sizeof(wchar_t));
MultiByteToWideChar(sourceCodepage,0,str,-1,(LPWSTR)pUnicode,unicodeLen);
BYTE * pTargetData;
int targetLen=WideCharToMultiByte(targetCodepage,0,(LPWSTR)pUnicode,-1,(char *)pTargetData,0,NULL,NULL);
pTargetData=new BYTE[targetLen+1];
memset(pTargetData,0,targetLen+1);
WideCharToMultiByte(targetCodepage,0,(LPWSTR)pUnicode,-1,(char *)pTargetData,targetLen,NULL,NULL);
CString rt;
rt.Format("%s",pTargetData);
delete pUnicode;
delete pTargetData;
return rt;
}
分享给你的朋友吧:
* i贴吧
* 新浪微博
* 腾讯微博
* QQ空间
* 人人网
* 豆瓣
* MSN
对我有帮助
1
回答时间:2010-6-13 16:47 | 我来评论
向TA求助
回答者: jlcust | 四级采纳率:28%
擅长领域: C/C++ 数据库 其他社会话题 股票 JAVA相关
参加的活动: 暂时没有参加的活动
提问者对于答案的评价:
谢谢,就是这样的 调用方法是:strUrl = UTF8Convert(strUrl,CP_ACP,CP_UTF8);
VC CString 转 UTF-8
最新推荐文章于 2024-04-10 10:29:51 发布