GBK 转 gb2312 可以吗,怎么转?

xieqi 2005-10-14 10:29:36
baidu的url里中文是用GBK 的。

baidu上搜索 “新闻” (gb2312),
在url上显示wd=%D0%C2%CE%C5 (GBK)

知道 %D0%C2%CE%C5
,如何转换会 “新闻” 啊。
...全文
228 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
ddboy 2005-10-20
  • 打赏
  • 举报
回复
<%
str = "wd=%D0%C2%CE%C5"
Function UrlUncode(str)
okstr = ""
hexvalue = "&H"
starthx = 0
slen = len(str)
for i=1 to slen
c = mid(str,i,1)
if starthx = 0 then
if c="%" then
starthx = 1
else
okstr = okstr & c
end if
else
if c<>"%" then
hexvalue = hexvalue & c
end If
If len(hexvalue) = 6 then
okstr = okstr & chr(hexvalue)
hexvalue = "&H"
starthx = 0
End If
End if
next
UrlUncode = okstr
End Function
response.Write("<br>"&UrlUncode(str))
%>
ddboy 2005-10-20
  • 打赏
  • 举报
回复
上面是 Server.UrlUncode("%D0%C2%CE%C5")
ddboy 2005-10-20
  • 打赏
  • 举报
回复
gb2312本来就是GBK的一个子集,所以是不可能转的,只能去除GBK字符,楼主所说的只是URL编码,与什么GBK无关,现在的浏览器基本都支持GBK编码

wd=%D0%C2%CE%C5

实际是 D0C2 CEC5 这两个字是属于GB2312字符集的范围,无需转换

Server.UrlEncode("%D0%C2%CE%C5")

这样就能还原


jspadmin 2005-10-19
  • 打赏
  • 举报
回复
恩,正则表达式才可以,而且,要求字符串中gbk内容是gb2312里有的才行(gb2312是gbk的子集)
ybfqlyq 2005-10-19
  • 打赏
  • 举报
回复
好像要向正則表達式才能做到。。。期待高手解決。。。關注
xieqi 2005-10-19
  • 打赏
  • 举报
回复
有人吗?

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧