分享:解决BASE64编码问题的终极方法

tonl8 2009-08-05 07:02:23
刚下班发了一个贴子,http://topic.csdn.net/u/20090805/18/5110e486-2139-4562-9d3c-a0ae0c049ab6.html#r_achor
呵呵,没想到这么快!

我也正好找到此组件,解决了此问题
方法如下:

Dim getBASE64STR '编码后的内容

getBASE64STR=XMLbase64(StreamReadFile(server.MapPath("testFAX.doc"),1))

Function StreamReadFile(FileName,Ntype)
dim objStream,m,i,bchar,Newstr
Set objStream =Server.CreateObject("ADODB.Stream")
objStream.Open

if Ntype=1 then
objStream.Type = 1 '2进制方式
objStream.LoadFromFile FileName
StreamReadFile=objStream.Read
else
objStream.Type = 2 '字符方式
objStream.CharSet = "gb2312"
objStream.LoadFromFile FileName
StreamReadFile=objStream.ReadText
end if
objStream.Close
Set objStream = Nothing
End Function


function XMLbase64(bytesouce)
'bytesouce 必须是用ADODB.Stream 读取的二进制数据流,方法请参看 StreamReadFile(FileName,Ntype) 函数
dim NewXML
set NewXML=server.CreateObject("Msxml2.DOMDocument")
NewXML.loadXML "<root />"
NewXML.documentElement.dataType = "bin.base64"
NewXML.documentElement.nodeTypedValue = bytesouce
XMLbase64 = NewXML.documentElement.Text
end function

解码方法,请参照VBCODE:

Function Base64Decode(Source As String) As Byte()

Dim MainXml As New DOMDocument

MainXml.loadXML "<root />"

MainXml.documentElement.dataType = "bin.base64"

MainXml.documentElement.Text = Source

Base64Decode = MainXml.documentElement.nodeTypedValue

End Function
...全文
140 回复 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

28,409

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧