我正在试图做的是编码gif文件,XML文档中包含。 这是我现在,但它似乎并没有工作。
Function gifToBase64(strGifFilename)
On Error Resume Next
Dim strBase64
Set inputStream = WScript.CreateObject("ADODB.Stream")
inputStream.LoadFromFile strGifFilename
strBase64 = inputStream.Text
Set inputStream = Nothing
gifToBase64 = strBase64
End Function
我最近写了一篇关于这个主题在实现的JScript和VBScript中 。 这里是解决方案,我有VBScript的:
Public Function convertImageToBase64(filePath)
Dim inputStream
Set inputStream = CreateObject("ADODB.Stream")
inputStream.Open
inputStream.Type = 1 ' adTypeBinary
inputStream.LoadFromFile filePath
Dim bytes: bytes = inputStream.Read
Dim dom: Set dom = CreateObject("Microsoft.XMLDOM")
Dim elem: Set elem = dom.createElement("tmp")
elem.dataType = "bin.base64"
elem.nodeTypedValue = bytes
convertImageToBase64 = "data:image/png;base64," & Replace(elem.text, vbLf, "")
End Function
在以托默勒格您的评论你的国家,你不希望使用外部DLL但在你试图例如您尝试使用ADODB。 因此,我怀疑你的意思是你不想安装本身不存在于vanilia windows平台的DLL。
如果是这样的话MSXML可能是你的答案 -
Function Base64Encode(rabyt)
Dim dom: Set dom = CreateObject("MSXML2.DOMDocument.3.0")
Dim elem: Set elem = dom.appendChild(dom.createElement("root"))
elem.dataType = "bin.base64"
elem.nodeTypedValue = rabyt
Base64Encode = elem.Text
End Function
看看这里: Base64编码和解码文件使用VBScript 。 本实施例中依赖于自由上XBase64分量并且仅提供一个包装用于文件处理。
你也可以去一个纯粹的VBScript实 ,但在这里,你必须照顾文件处理自己。 应该不会太困难,但编码性能将没有那么好。 对于一些小的图像文件,这将是足够的,但。
谷歌将关闭多了起来。