首页 > 解决方案 > 解码 base64 -> 二进制(八位字节流) -> 来自掌上软件的图像

问题描述

一位客户我正在建立一个网站,以满足她的现场代理在其掌上软件(通过第三方软件)上的产品图像的需求。我联系了该公司的技术支持,并询问图像是否托管在他们的服务器上,或者我是否可以拥有包含其位置的 csv/生成文件。

作为答案,他们说他们不会将其存储在数据库中,而是将信息发送到我可以在 ImageBytes 部分找到的 android。打开文档时,我得到一个 ID、产品名称和似乎是base64字符串的列表。

这是一个字符串的摘录(超过 30k+ 字符)

https://pastebin.com/KQ4QYbju

我尝试将其加载为<img src="data:image/png;base64,string>,它显然不起作用。

我去了base64.guru,经过分析,它似乎是一个八位字节/流;尝试加载,失败。二进制文件。尝试从base64下载到.bin保存,从bin-> bmp在线转换器等等。

我在 SO 上阅读了几个答案,因为它是在 PALMS 上,所以我认为它们可能是位图文件,但老实说,这只是一个疯狂的猜测。

我已经阅读了有关 bitmapfactory 的信息,并想嘿,也许输出文件是在 bitmapfactory 中编码的,然后才被解码。

由于我没有原生的 Android/Java 经验(只是在小型项目中与 ng/ionic 混合使用),所以我现在似乎在追鬼,技术人员会在 3-4 天内回复。

关于我如何至少了解正在发生的事情或我应该寻找什么的任何想法?

谢谢你。

标签: androidbinarybase64hex

解决方案


这是一张十六进制编码的 JPEG 图片。每个字节由两个十六进制的 ASCII 字符表示

它以 0x 开头,后跟十六进制 (0..9, A..F) 数字。

前 4 个字节FFD8FFE0JPEG 标头的典型开头

您可以使用在线工具进行转换,例如。这个


推荐阅读