如下是utf-8编码的UrlEncode函数
Function urlencode(str) Dim i,c,s,length length = Len(str) For i = 1 To length s = Mid(str,i,1) c = "&H" & Hex(AscW(Mid(str,i,1))) If ( c >= AscW("A") And c <= AscW("Z") ) Or _ ( c >= AscW("a") And c <= AscW("z") ) Or _ ( c >= AscW("0") And c <= AscW("9") ) Or _ ( c = AscW("-") Or c = AscW("_") Or c = AscW(".") ) Then urlencode = urlencode & s ElseIf c = AscW(" ") Then urlencode = urlencode & "+" Else If c >= &H0001 And c <= &H007F Then urlencode = urlencode & s ElseIf c > &H07FF Then urlencode = urlencode & "%" & Hex(&HE0 Or (c\(2^12) And &H0F)) urlencode = urlencode & "%" & Hex(&H80 Or (c\(2^6) And &H3F)) urlencode = urlencode & "%" & Hex(&H80 Or (c\(2^0) And &H3F)) Else urlencode = urlencode & "%" & Hex(&HC0 Or (c\(2^6) And &H1F)) urlencode = urlencode & "%" & Hex(&H80 Or (c\(2^0) And &H3F)) End If End If Next End Function
如果URLEncode值想作为post内容提交的话,记得过滤4个字母~~
'替换/+=为'%2F%2B%3D postContent = replace(postContent,"/","%2F") postContent = replace(postContent,"+","%2B") postContent = replace(postContent,"=","%3D") postContent = replace(postContent,"&","%26")
否则,如果你在提交代码的话,会死的很惨~~~~ 我已经惨过了~~
|