VBScript的中文编码解码,与JS的Escape()相同功能
2008-12-02 09:17
302 查看
Function vbsEscape(str) as String
Dim i As Integer
Dim c As String
Dim s As String
Dim a As Integer
s=""
For i=1 to Len(str)
c=Mid(str,i,1)
a=ASCW(c)
If (a>=48 and a<=57) or (a>=65 and a<=90) or (a>=97 and a<=122) Then
s = s & c
ElseIf InStr("@*_+-./",c)>0 Then
s = s & c
ElseIf a>0 and a<16 Then
s = s & "%0" & Hex(a)
ElseIf a>=16 and a<256 Then
s = s & "%" & Hex(a)
Else
s = s & "%u" & Hex(a)
End If
Next
return s
End Function
Function vbsUnEscape(str)
dim i,s,c
s=""
For i=1 to Len(str)
c=Mid(str,i,1)
If Mid(str,i,2)="%u" and i<=Len(str)-5 Then
If IsNumeric("&H" & Mid(str,i+2,4)) Then
s = s & CHRW(CInt("&H" & Mid(str,i+2,4)))
i = i+5
Else
s = s & c
End If
ElseIf c="%" and i<=Len(str)-2 Then
If IsNumeric("&H" & Mid(str,i+1,2)) Then
s = s & CHRW(CInt("&H" & Mid(str,i+1,2)))
i = i+2
Else
s = s & c
End If
Else
s = s & c
End If
Next
vbsUnEscape = s
End Function
Function AscIIString(str as string) as String
Dim j As Integer
Dim i As Integer
Dim charArray() As Char
Dim charNew() As Char
Dim strNew As String
charArray = str.ToCharArray()
For i = 0 To charArray.Length - 1 Step 1
strNew = strNew & Asc(charArray(i)).ToString("000")
Next
charNew = strNew.ToCharArray()
strNew = ""
For j = 0 To charNew.Length - 1 Step 2
If j = charNew.Length - 1 Then
strNew = strNew & charNew(j).ToString()
Else
strNew = strNew & charNew(j + 1).ToString()
strNew = strNew & charNew(j).ToString()
End If
Next
return strNew
End Function
Dim i As Integer
Dim c As String
Dim s As String
Dim a As Integer
s=""
For i=1 to Len(str)
c=Mid(str,i,1)
a=ASCW(c)
If (a>=48 and a<=57) or (a>=65 and a<=90) or (a>=97 and a<=122) Then
s = s & c
ElseIf InStr("@*_+-./",c)>0 Then
s = s & c
ElseIf a>0 and a<16 Then
s = s & "%0" & Hex(a)
ElseIf a>=16 and a<256 Then
s = s & "%" & Hex(a)
Else
s = s & "%u" & Hex(a)
End If
Next
return s
End Function
Function vbsUnEscape(str)
dim i,s,c
s=""
For i=1 to Len(str)
c=Mid(str,i,1)
If Mid(str,i,2)="%u" and i<=Len(str)-5 Then
If IsNumeric("&H" & Mid(str,i+2,4)) Then
s = s & CHRW(CInt("&H" & Mid(str,i+2,4)))
i = i+5
Else
s = s & c
End If
ElseIf c="%" and i<=Len(str)-2 Then
If IsNumeric("&H" & Mid(str,i+1,2)) Then
s = s & CHRW(CInt("&H" & Mid(str,i+1,2)))
i = i+2
Else
s = s & c
End If
Else
s = s & c
End If
Next
vbsUnEscape = s
End Function
Function AscIIString(str as string) as String
Dim j As Integer
Dim i As Integer
Dim charArray() As Char
Dim charNew() As Char
Dim strNew As String
charArray = str.ToCharArray()
For i = 0 To charArray.Length - 1 Step 1
strNew = strNew & Asc(charArray(i)).ToString("000")
Next
charNew = strNew.ToCharArray()
strNew = ""
For j = 0 To charNew.Length - 1 Step 2
If j = charNew.Length - 1 Then
strNew = strNew & charNew(j).ToString()
Else
strNew = strNew & charNew(j + 1).ToString()
strNew = strNew & charNew(j).ToString()
End If
Next
return strNew
End Function
相关文章推荐
- Js实现中文编码与解码功能
- Base64 JAVA后台编码与JS前台解码(解决中文乱码问题)
- URL传参带特殊字符,js中对中文编码解码
- js中文编码到C#后台解码
- js中的编码解码--escape/unescape、encodeURI/decodeURI 、encodeURIComponent/decodeURIComponent
- 【javascript基础】 JS中编码解码escape、encodeURI、encodeURIComponent区别详解【转】
- JS传递参数时对中文进行编码和解码
- js Jquery字符UrlEncode 编码、解码 --C#UrlEncode cookies存 中文
- JS 中文编码解码 后台对应方式
- 在Java中正确解码用Javascript:escape()编码的中文字符
- js 对编码后的中文字符解码
- Java中正确解码用Javascript:escape()编码的中文字符
- 通过js编码(escape)解码(un e…
- 在Java中正确解码用Javascript:escape()编码的中文字符
- js前台编码,java后台解码,el表达式拼装param中文参数编码
- 在Java中正确解码用Javascript:escape()编码的中文字符
- JS的 escape、encodeURI 、encodeURIComponent 编码与解码
- js 编码解码 escape,encodeURI,encodeURIComponent
- PHP解码js的escape编码的字符
- 一:Js的Url中传递中文参数乱码问题,重点:encodeURI编码,decodeURI解码: