·您现在的位置: 云翼网络 >> 文章中心 >> 网站建设 >> 网站建设开发 >> ASP网站建设 >> ASP中实现的类似URLEncode的编码函数及对应解码函数

ASP中实现的类似URLEncode的编码函数及对应解码函数

作者:佚名      ASP网站建设编辑:admin      更新时间:2022-07-23

<%
'Coding.inc.asp
'All Rights Reserved, [email protected]

Function Encode(Str)
 Dim Count, Pos, Ch, Code
 Dim SweetCh
 
 'SweetCh中表示不需要进行编码的字符
 SweetCh = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz_{}[]()"
 Encode = ""
 
 Count = Len(Str)
 Pos = 1
 Do While Pos<=Count
  Ch = Mid(Str, Pos, 1)
 
  Code = Asc(Ch)
  If Code>=0 And Code<256 Then  '汉字不予处理
   If Ch<>"%" Then
    If InStr(SweetCh, Ch)=0 Then
     Ch = "%" & Right("0" & Hex(Code), 2)
    End If
   Else
    Ch = "%25"
   End If
  End If
 
  Encode = Encode & Ch
  Pos = Pos + 1
 Loop
End Function

Function Decode(Str)
 Dim Count, Pos, Ch, Code
 
 Decode = ""
 
 Count = Len(Str)
 Pos = 1
 Do While Pos<=Count
  Ch = Mid(Str, Pos, 1)
  If Ch="%" Then
   If Pos+2<=Count Then
    Ch = Chr((InStr("0123456789ABCDEF", UCase(Mid(Str, Pos+1, 1)))-1) * 16 + InStr("0123456789ABCDEF",UCase(Mid(Str, Pos+2, 1))) - 1)
   Else
    '编码串不正确
    Ch = ""
   End If
   Pos = Pos + 2
  End If
  Decode = Decode & Ch
  Pos = Pos + 1
 Loop
End Function
%>