<%
'Codificación.inc.asp
'Todos los derechos reservados, [email protected]
Codificación de función (Str)
Conteo tenue, Pos, Canal, Código
Dim SweetCh
'SweetCh中表示不需要进行编码的字符
SweetCh = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz_{}[]()"
Codificar = ""
Contar = Len(Str)
Posición = 1
Hacer mientras Pos<=Contar
Canal = Medio(Str, Pos, 1)
Código = Asc(Ca)
Si Código>=0 y Código<256 Entonces '汉字不予处理
Si Ch<>"%" Entonces
Si InStr(SweetCh, Ch)=0 Entonces
Ch = "%" y Derecha("0" y Hexadecimal(Código), 2)
Terminar si
Demás
Canal = "%25"
Terminar si
Terminar si
Codificar = codificar y canal
Pos = Pos + 1
Bucle
Función final
Decodificación de función (Str)
Conteo tenue, Pos, Canal, Código
Decodificar = ""
Contar = Len(Str)
Posición = 1
Hacer mientras Pos<=Contar
Canal = Medio(Str, Pos, 1)
Si Ch="%" entonces
Si Pos+2<=Contar Entonces
Ch = Chr((InStr("0123456789ABCDEF", UCase(Mid(Str, Pos+1, 1)))-1) * 16 + InStr("0123456789ABCDEF",UCase(Mid(Str, Pos+2, 1)) ) - 1)
Demás
'编码串不正确
Ch = ""
Terminar si
Pos = Pos + 2
Terminar si
Decodificar = Decodificar y Ch
Pos = Pos + 1
Bucle
Función final
%>