给URL地址栏中的参数加密\解密

Function URLDecode(enStr)                    'URL解碼函數
  dim deStr
  dim c,i,v
  deStr=""
  for i=1 to len(enStr)
      c=Mid(enStr,i,1)
      if c="%" then
          v=eval("&h"+Mid(enStr,i+1,2))
          if v<128 then
              deStr=deStr&chr(v)
              i=i+2
          else
              if isvalidhex(mid(enstr,i,3)) then
                  if isvalidhex(mid(enstr,i+3,3)) then
                      v=eval("&h"+Mid(enStr,i+1,2)+Mid(enStr,i+4,2))
                      deStr=deStr&chr(v)
                      i=i+5
                  else
                      v=eval("&h"+Mid(enStr,i+1,2)+cstr(hex(asc(Mid(enStr,i+3,1)))))
                      deStr=deStr&chr(v)
                      i=i+3  
                  end if  
              else  
                  destr=destr&c
              end if
          end if
      else
          if c="+" then
              deStr=deStr&" "
          else
              deStr=deStr&c
          end if
      end if
  next
  URLDecode=deStr
end function

function isvalidhex(str)
  isvalidhex=true
  str=ucase(str)
  if len(str)<>3 then isvalidhex=false:exit function
  if left(str,1)<>"%" then isvalidhex=false:exit function
  c=mid(str,2,1)
  if not (((c>="0") and (c<="9")) or ((c>="A") and (c<="Z"))) then isvalidhex=false:exit function
  c=mid(str,3,1)
  if not (((c>="0") and (c<="9")) or ((c>="A") and (c<="Z"))) then isvalidhex=false:exit function
end function

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值