CString UrlEncode(CString strUnicode)
{
LPCWSTR unicode = T2CW(strUnicode);
int len = WideCharToMultiByte(CP_UTF8, 0, unicode, -1, 0, 0, 0, 0);
if (!len)
return strUnicode;
char *utf8 = new char[len + 1];
char *utf8temp = utf8;
WideCharToMultiByte(CP_UTF8, 0, unicode, -1, utf8, len + 1, 0, 0);
utf8[len] = NULL;
CString strTemp, strEncodeData;
while (*utf8 != '\0')
{
strTemp.Format(_T("%%%2x"), (BYTE)*utf8);
strEncodeData += strTemp;
++utf8;
}
delete[]utf8temp;
return CString(strEncodeData);
}
MFC中CString网址转换
最新推荐文章于 2023-06-11 21:48:59 发布
本文深入解析了使用C++实现URL编码的过程,通过将Unicode字符串转换为UTF-8,然后逐字符进行十六进制编码,最终形成标准的URL编码格式。文章详细展示了编码函数的内部逻辑与实现细节。

1101

被折叠的 条评论
为什么被折叠?



