使用VBA读取一个base64格式的图片字符串?

4

问题

如何使用Microsoft Access vba读取或转换base64图像字符串?

要求

一个base64图像字符串被存储在ms sqlserver数据库中,如下所示:

BASE64

data:image/png;base64,iVBORw0KGgoAAAA...

我正在尝试使用微软的 VBA 从数据库中读取字符串。


我知道 VBA 能够从数据库中读取字符串,以将图像输出到屏幕上,因为我目前通过以下方式读取图像作为 十六进制 字符串来实现此结果:

HEX

89504E470D0A1A0A0000000D49484...

那么,VBA如何读取Base64图像字符串以在Microsoft Access屏幕上显示图像呢?

1
为什么有些人会毫无原因和解释地给问题点踩?提供建议如何改进问题,从而改善网站。 - DreamTeK
数据库是SQL Server。读取数据库使用VBA。 - DreamTeK
下投票的一个可能原因是你的问题比较模糊。问:“是否可能……?”答:“是的,可能。”更具体的内容将取决于在图像解码后你想要做什么。“需要更改以适应新的、更高效的 Web 技术”并不足够描述。至于解码方法本身,你是否偶然搜索过“访问 base64 解码”……? - Gord Thompson
@GordThompson 谢谢,这很有帮助。我会修改我的问题来弥补。 - DreamTeK
1
@Greedo,恐怕这个问题已经过期了。我不记得了,但我认为我根本没有进行转换,最终我在数据库中保存了两种格式。 - DreamTeK
显示剩余2条评论
1个回答

3
我知道vba能够从数据库读取字符串来将图像输出到屏幕上,就像我通常通过读取十六进制字符串来实现这个结果一样:

HEX

89504E470D0A1A0A0000000D49484...

所以你真正想要的是如何将Base64字符串解码为十六进制字符串。在这种情况下,你只需要去掉前缀“data:image/png;base64,”,并将其余部分传递给像这个答案描述的Decode64()函数即可。

那看起来就是我想要的。我会试一下。谢谢。 - DreamTeK

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接