LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

ASP自动识别URI使用的编码(gbk/utf-8)并正确解码

admin
2011年12月24日 11:18 本文热度 2623

如“济南网站建设”的编码
GBK:%BC%C3%C4%CF%CD%F8%D5%BE%BD%A8%C9%E8
UTF-8:%E6%B5%8E%E5%8D%97%E7%BD%91%E7%AB%99%E5%BB%BA%E8%AE%BE


能不能让程序在未知何种编码格式的情况下,自动识别其编码格式,并正确解出 “济南网站建设” (Google 就能做到)


本来想如果无法用函数直接实现就只有将编码提交到Google然后采集里面的关键字,如:


http://www.google.com.hk/search?q=%BC%C3%C4%CF%CD%F8%D5%BE%BD%A8%C9%E8(GBK)或
http://www.google.com.hk/search?q=%E6%B5%8E%E5%8D%97%E7%BD%91%E7%AB%99%E5%BB%BA%E8%AE%BE(UTF-8)


采集如上两页面的内容就能识别出编码所对应的关键字是“济南网站建设”




相当于利用网络间接解码吧,但是网站程序服务器必须能够访问到互联网(未接入互联网的内网服务器无法使用)。好在终于找到的解决办法啊,ASP函数如下:



Function DecodeURI(s)
s = UnEscape(s)
Dim reg, cs
cs = “GBK”
Set reg = New RegExp
reg.Pattern = “^(?:[\x00-\x7f]|[\xfc-\xff][\x80-\xbf]{5}|[\xf8-\xfb][\x80-\xbf]{4}|[\xf0-\xf7][\x80-\xbf]{3}|[\xe0-\xef][\x80-\xbf]{2}|[\xc0-\xdf][\x80-\xbf])+$”
If reg.Test(s) Then cs = “UTF-8″
Set reg = Nothing
Dim sm
Set sm = CreateObject(“ADODB.Stream”)
With sm
.Type = 2
.Mode = 3
.Open
.CharSet = “iso-8859-1″
.WriteText s
.Position = 0
.CharSet = cs
DecodeURI = .ReadText(-1)
.Close
End With
Set sm = Nothing
End Function


DecodeURI(%BC%C3%C4%CF%CD%F8%D5%BE%BD%A8%C9%E8)
DecodeURI(%E6%B5%8E%E5%8D%97%E7%BD%91%E7%AB%99%E5%BB%BA%E8%AE%BE)
如此调用,不用指定编码便可以自动解码。


该文章在 2011/12/24 11:18:20 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2024 ClickSun All Rights Reserved