Unicode下漢字URLEncode解決方法

2021-05-27 16:07:52 字數 860 閱讀 4435

//漢字encode

.hint unitoutf8(cstring strunicode,char *szutf8);

cstring unitourlencode(const char* szencode);

.cpp

int cweatherpropertydlg::unitoutf8(cstring strunicode,char *szutf8)

cstring cweatherpropertydlg::unitourlencode(const char* szencode)

;static const char szhexchr = ;

int nlength = strlen(szencode);

for(int i = 0; i < nlength; i++)

else

}return strencoded;

}測試:

cstring strtmp1 = _t("廣州");

getdlgitemtext(idc_edit1,strtmp1);

char *szchar = new char[strtmp1.getlength()+1];

unitoutf8(strtmp1,szchar);

unitourlencode(szchar);

delecte szchar;

注意事項:

szchar要分配記憶體空間,要不在後面unitoutf8()中的sprintf()操作中就會報錯,原因就是第乙個引數沒有分配記憶體空間。也可在unitoutf8()中對第乙個引數進行判斷,如果長度為0,則分配記憶體空間。

char *szchar = new char[strtmp1.getlength()+1];

漢字unicode編碼範圍

gb2312編碼 1981年5月1日發布的簡體中文漢字編碼國家標準。gb2312對漢字採用雙位元組編碼,收錄7445個圖形字元,其中包括6763個漢字。big5編碼 台灣地區正體中文標準字符集,採用雙位元組編碼,共收錄13053個中文字,1984年實施。gbk編碼 1995年12月發布的漢字編碼國家...

漢字unicode編碼範圍

gb2312編碼 1981年5月1日發布的簡體中文漢字編碼國家標準。gb2312對漢字採用雙位元組編碼,收錄7445個圖形字元,其中包括6763個漢字。big5編碼 台灣地區正體中文標準字符集,採用雙位元組編碼,共收錄13053個中文字,1984年實施。gbk編碼 1995年12月發布的漢字編碼國家...

java將unicode轉為漢字

格式為 u x 4個x prefix unicode u public static string ascii2native string str return sb.tostring private static char ascii2char string str if prefix unico...