社区
HTML/XML
帖子详情
怎样将网页中的%xx%xx的字符串转换为一般字符串?谢谢
Eagle_118
2004-09-06 03:16:08
我从网页的头信息中提取部分数据,可是如果该部分数据中有中文,则得到的结果是%EA%9D...的形式的文字,我需要将其转化回中文字符,请高手指点。
谢谢。
...全文
193
8
打赏
收藏
怎样将网页中的%xx%xx的字符串转换为一般字符串?谢谢
我从网页的头信息中提取部分数据,可是如果该部分数据中有中文,则得到的结果是%EA%9D...的形式的文字,我需要将其转化回中文字符,请高手指点。 谢谢。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
woodwoodwood3
2004-09-09
打赏
举报
回复
给你个函数:
//转换Web字符串到标准字符串
//例如 %D0%EC 转换成"徐"
CString CDlgIEDlg::WebStr2Str(LPCSTR lpBuf)
{
int nLen;
if(!lpBuf) nLen=0;
else nLen=::lstrlen(lpBuf);
CString s; int i=0;
while(i<nLen)
{
if(lpBuf[i]=='%')
{
BYTE c1=lpBuf[i+1];
BYTE c2=lpBuf[i+2];
i+=2;
if(c1>='0' && c1<='9') c1=(c1-'0')*16;
else if(c1>='A' && c1<='Z') c1=(c1-'A'+10)*16;
else if(c1>='a' && c1<='a') c1=(c1-'a'+10)*16;
if(c2>='0' && c2<='9') c2=c2-'0';
else if(c2>='A' && c2<='Z') c2=c2-'A'+10;
else if(c2>='a' && c2<='z') c2=c2-'a'+10;
char szStr[2]; szStr[0]=c1+c2; szStr[1]=0;
s+=szStr;
}
else if(lpBuf[i]=='+') s+=" ";
else s+=CString(&lpBuf[i],1);
i++;
}
return s;
}
snaill
2004-09-08
打赏
举报
回复
%后面的是字符的16进制码,主要是因为你的页面的编码不对应的原因,你可以将他们直接转换为BYTE[]的形式,根据页面的编码做转换
roger_ding
2004-09-08
打赏
举报
回复
WideCharToMultiByte 用法参考MSDN
Eagle_118
2004-09-06
打赏
举报
回复
我也是这样转换的,关键还有字符集的问题,我发现该段字符串的内容应该事utf-8的编码,但是我在content_type中得到的charset=gbk,并且我怎样才能够将utf-8的字符转化为ansi的字符串。
谢谢。
lixiaosan
2004-09-06
打赏
举报
回复
关注一下
Jimmy_Xia
2004-09-06
打赏
举报
回复
CString szText;
存放得是一行网页数据
Jimmy_Xia
2004-09-06
打赏
举报
回复
%xx应该是16进制的数据,你把%后面得数字作为16进制数据来对待。
比如%20 = 0x20
等等,依此类推。
我没有做过,不知道对不对,你试试看吧。
还有字节顺序不知道是怎样得,这个需要测试一下。
参考代码如下:
char buffer[1024];
CString szText;
int nLen = szText.GetLength();
int nIndex = szText.Find('%');
int i = 0;
while(nIndex>=0)
{
buffer[i] = ConvertStrToHex(szText.Mid(nIndex+1,2));//将%后得数字字符转换成数字
nIndex ++;
i ++;
nIndex = szText.Find('%');
}
Eagle_118
2004-09-06
打赏
举报
回复
太简单了?
还是太难了?
python URL编码及乱码问题
本文探讨了爬取
网页
时遇到的
中
文URL编码问题,如何使用urllib模块正确处理
字符串
转url编码,并解决了响应文本
中
的乱码,包括设置encoding和使用iso-8859-1/GBK
转换
。
应用程序
中
的IO
本文探讨了在软件开发过程
中
遇到的路径处理难题,特别是在资源管理方面。文章详细介绍了不同编码方式下
中
文路径的表现形式及解决方案,并分享了一种解决路径
转换
问题的算法。此外,还提到了资源管理器在处理本地文件、网络数据和数据库等方面的设计思路。
js
中
如何实现把gb2312码转为unicode码
本文分享了在
网页
开发过程
中
遇到的URL
中
汉字编码问题及解决方案。主要探讨了不同浏览器对URL
中
汉字的不同处理方式,特别是在Firefox
中
遇到的问题,并提供了解决方案。
delphi
中
URL的汉字编码
本文介绍了一段 Delphi 代码,用于解决 URL
中
汉字的 GB2312 和 Unicode 编码
转换
问题。该函数能将 URL
中
的汉字从 Unicode
转换
为 GB2312 的 %
xx
形式。
含有
中
文的网址
中
显示百分号%等乱码是什么?
本文详细解释了浏览器地址栏
中
出现的由%和字母数字组成的特殊编码现象。这些编码并非乱码,而是特定的UTF-8或gbk(GB2312)编码方式,用于将
中
文字符
转换
为计算机可识别的形式。
HTML/XML
3,056
社区成员
8,075
社区内容
发帖
与我相关
我的任务
HTML/XML
VC/MFC HTML/XML
复制链接
扫一扫
分享
社区描述
VC/MFC HTML/XML
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章