<%
'コーディング.inc.asp
'無断複写・転載を禁じます、 [email protected]
関数エンコード(Str)
ディムカウント、位置、Ch、コード
ディム・スウィート・チ
'SweetCh中表示不要のコードを実行する文字記号
SweetCh = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz_{}[]()"
エンコード = ""
カウント = レン(Str)
位置 = 1
pos<=Count の間実行
Ch = Mid(Str, Pos, 1)
コード = Asc(Ch)
If Code>=0 And Code<256 then '汉字不予处処理
If Ch<>"%" then
InStr(SweetCh, Ch)=0 の場合
Ch = "%" & Right("0" & Hex(コード), 2)
終了の場合
それ以外
Ch = "%25"
終了の場合
終了の場合
エンコード = エンコード & Ch
正 = 正 + 1
ループ
終了関数
関数デコード(Str)
ディムカウント、位置、Ch、コード
デコード = ""
カウント = レン(Str)
位置 = 1
pos<=Count の間実行
Ch = Mid(Str, Pos, 1)
Ch="%" の場合
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)
それ以外
'编码串不正确
Ch = ""
終了の場合
位置 = 位置 + 2
終了の場合
デコード = デコード & Ch
正 = 正 + 1
ループ
終了機能
%>