asp base64 utf-8为了兼容asp.net的base64
asp base64 utf-8为了兼容asp.net的base64
发布时间:2016-12-29 来源:查字典编辑
摘要:复制代码代码如下:=2AndFlagThen.WriteTextChrB(CInt("&H"&Left(varElement,2)))For...

复制代码 代码如下:

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>

<%Session.CodePage=65001%>

<>

<%

Function AspUrlDecode(strValue)

Dim varAry, varElement, objStream, lngLoop, Flag

strValue = Replace(strValue, "+", " ")

varAry = Split(strValue, "%")

Flag = varAry(0) = ""

Set objStream = Server.CreateObject("ADODB.Stream")

With objStream

.Type = 2

.Mode = 3

.Open

For Each varElement In varAry

If varElement <> Empty Then

If Len(varElement) >= 2 And Flag Then

.WriteText ChrB(CInt("&H" & Left(varElement, 2)))

For lngLoop = 3 To Len(varElement)

.WriteText ChrB(Asc(Mid(varElement, lngLoop, 1)))

Next

Else

For lngLoop = 1 To Len(varElement)

.WriteText ChrB(Asc(Mid(varElement, lngLoop, 1)))

Next

Flag = True

End If

End If

Next

.WriteText Chr(0)

.Position = 0

AspUrlDecode = Replace(ConvUnicode(.ReadText), Chr(0), "", 1, -1, 0)

On Error Resume Next

.Close

Set objStream = Nothing

End With

End Function

Function ConvUnicode(ByVal strData)

Dim rs, stm, bytAry, intLen

If Len(strData & "") > 0 Then

strData = MidB(strData, 1)

intLen = LenB(strData)

Set rs = Server.CreateObject("ADODB.Recordset")

Set stm = Server.CreateObject("ADODB.Stream")

With rs

.Fields.Append "X", 205, intLen

.Open

.AddNew

rs(0).AppendChunk strData & ChrB(0)

.Update

bytAry = rs(0).GetChunk(intLen)

End With

With stm

.Type = 1

.Open

.Write bytAry

.Position = 0

.Type = 2

.Charset = "utf-8"

ConvUnicode = .ReadText

End With

End If

On Error Resume Next

stm.Close

Set stm = Nothing

rs.Close

Set rs = Nothing

End Function

%>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

</head>

<body>

<%

'base64编码后,比起.net多了77u/

Response.Write("base64编码后:"&base64Encode("阿会楠")&"<br />")

'base64解码后

Response.Write("base64解码后:"&base64uncode("6Zi/5Lya5qWg")&"<br />")

%>

</body>

</html>

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新ASP教程学习
热门ASP教程学习
编程开发子分类