程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> UTF8ToGB

UTF8ToGB

編輯:C++入門知識

int UTF8ToGB(const char* str,char *out)
{
 WCHAR *strSrc;
 TCHAR *szRes;
 int len;
 
 //獲得臨時變量的大小
 int i = MultiByteToWideChar(CP_UTF8, 0, str, -1, NULL, 0);
 strSrc = new WCHAR[i+1];
 MultiByteToWideChar(CP_UTF8, 0, str, -1, strSrc, i);
 
 //獲得臨時變量的大小
 i = WideCharToMultiByte(CP_ACP, 0, strSrc, -1, NULL, 0, NULL, NULL);
 szRes = new TCHAR[i+1];
 WideCharToMultiByte(CP_ACP, 0, strSrc, -1, szRes, i, NULL, NULL);
 
 len = (i+1)*sizeof(CHAR);
 memcpy(out,szRes,len);
 out[len+1] ='\0';
 
 delete []strSrc;
 delete []szRes;
 
 return len;
}

摘自 sniper_bing的專欄

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved