asp的url编码和解码

    技术2022-05-11  86

    <% function urldecoding(vstrin) 'qiushuiwuhen(2002-6-19)     dim i,strreturn,strSpecial     strSpecial = "!""#$%&'()*+,/:;<=>?@[/]^`{|}~%"     strreturn = ""     for i = 1 to len(vstrin)            thischr = mid(vstrin,i,1)         if thischr="%" then             intasc=eval("&h"+mid(vstrin,i+1,2))             if instr(strSpecial,chr(intasc))>0 then                 strreturn= strreturn & chr(intasc)                 i=i+2             else                 intasc=eval("&h"+mid(vstrin,i+1,2)+mid(vstrin,i+4,2))                 strreturn= strreturn & chr(intasc)                 i=i+5             end if         else             if thischr="+" then                 strreturn= strreturn & " "             else                 strreturn= strreturn & thischr             end if         end if     next     urldecoding = strreturn end function function urlencoding(vstrin)     dim i,strreturn,strSpecial     strSpecial = "!""#$%&'()*+,/:;<=>?@[/]^`{|}~%"     strreturn = ""     for i = 1 to len(vstrin)         thischr = mid(vstrin,i,1)         if abs(asc(thischr)) < &hff then             if thischr=" " then                 strreturn = strreturn & "+"             elseif instr(strSpecial,thischr)>0 then                 strreturn = strreturn & "%" & hex(asc(thischr))             else                 strreturn = strreturn & thischr             end if         else             innercode = asc(thischr)             if innercode < 0 then                 innercode = innercode + &h10000             end if             hight8 = (innercode  and &hff00)/ &hff             low8 = innercode and &hff             strreturn = strreturn & "%" & hex(hight8) &  "%" & hex(low8)         end if     next     urlencoding = strreturn end function %>

    最新回复(0)