生活随笔
收集整理的這篇文章主要介紹了
GBK字符集和UTF8字符集的转换C++
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
轉自:
http://blog.csdn.net/segen_jaa/article/details/6447874/
void ConvertUtf8ToGBK(CString &ioStr)
{
int len=MultiByteToWideChar(CP_UTF8,
0, (LPCTSTR)ioStr,
-1, NULL
,0);wchar_t * wszGBK =
new wchar_t[
len];memset(wszGBK
,0,
len);MultiByteToWideChar(CP_UTF8,
0, (LPCTSTR)ioStr,
-1, wszGBK,
len);
len = WideCharToMultiByte(CP_ACP,
0, wszGBK,
-1, NULL,
0, NULL, NULL);char *szGBK=
new char[
len +
1];memset(szGBK,
0,
len +
1);WideCharToMultiByte (CP_ACP,
0, wszGBK,
-1, szGBK,
len, NULL,NULL);ioStr = szGBK;
delete[] szGBK;
delete[] wszGBK;
}
void ConvertGBKToUtf8(CString &ioStr)
{
int len=MultiByteToWideChar(CP_ACP,
0, (LPCTSTR)ioStr,
-1, NULL
,0);wchar_t * wszUtf8 =
new wchar_t [
len];memset(wszUtf8,
0,
len);MultiByteToWideChar(CP_ACP,
0, (LPCTSTR)ioStr,
-1, wszUtf8,
len);
len = WideCharToMultiByte(CP_UTF8,
0, wszUtf8,
-1, NULL,
0, NULL, NULL);char *szUtf8=
new char[
len +
1];memset(szUtf8,
0,
len +
1);WideCharToMultiByte (CP_UTF8,
0, wszUtf8,
-1, szUtf8,
len, NULL,NULL);ioStr = szUtf8;
delete[] szUtf8;
delete[] wszUtf8;
}
總結
以上是生活随笔為你收集整理的GBK字符集和UTF8字符集的转换C++的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。