Asp版的escape和unescape函数

 加密:

ASP/Visual Basic代码
  1. Function vbsEscape(str)  
  2.     dim i,s,c,a  
  3.     s=""  
  4.     For i=1 to Len(str)  
  5.         c=Mid(str,i,1)  
  6.         a=ASCW(c)  
  7.         If (a>=48 and a<=57) or (a>=65 and a<=90) or (a>=97 and a<=122) Then  
  8.             s = s & c  
  9.         ElseIf InStr("@*_+-./",c)>0 Then  
  10.             s = s & c  
  11.         ElseIf a>0 and a<16 Then  
  12.             s = s & "%0" & Hex(a)  
  13.         ElseIf a>=16 and a<256 Then  
  14.             s = s & "%" & Hex(a)  
  15.         Else  
  16.             s = s & "%u" & Hex(a)  
  17.         End If  
  18.     Next  
  19.     vbsEscape = s  
  20. End Function  

解密:

ASP/Visual Basic代码
  1. Function vbsUnEscape(str)  
  2.     dim i,s,c  
  3.     s=""  
  4.     For i=1 to Len(str)  
  5.         c=Mid(str,i,1)  
  6.         If Mid(str,i,2)="%u" and i<=Len(str)-5 Then  
  7.             If IsNumeric("&H" & Mid(str,i+2,4)) Then  
  8.                 s = s & CHRW(CInt("&H" & Mid(str,i+2,4)))  
  9.                 i = i+5  
  10.             Else  
  11.                 s = s & c  
  12.             End If  
  13.         ElseIf c="%" and i<=Len(str)-2 Then  
  14.             If IsNumeric("&H" & Mid(str,i+1,2)) Then  
  15.                 s = s & CHRW(CInt("&H" & Mid(str,i+1,2)))  
  16.                 i = i+2  
  17.             Else  
  18.                 s = s & c  
  19.             End If  
  20.         Else  
  21.             s = s & c  
  22.         End If  
  23.     Next  
  24.     vbsUnEscape = s  
  25. End Function  


上一篇: javascript兼容性获取鼠标坐标
下一篇: 本人常用的Asp实现GB2312转UTF8函数
文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags: asp
相关日志:
评论: 1 | 引用: 0 | 查看次数: 3269
27siMn无缝钢管[2012-05-22 12:30 AM | 访问 http://www.hqngg.com | | 218.86.103.26 | del | 回复回复]
沙发
哇塞吓到的好复杂
发表评论
昵 称:
密 码: 游客发言不需要密码.
邮 箱: 邮件地址支持Gravatar头像,邮箱地址不会公开.
网 址: 输入网址便于回访.
内 容:
验证码:
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.
字数限制 1000 字 | UBB代码 开启 | [img]标签 关闭

 广告位

↑返回顶部↑