【问题标题】:Retrieve MIME type from Base64 encoded String从 Base64 编码的字符串中检索 MIME 类型
【发布时间】:2015-04-06 00:58:00
【问题描述】:

假设一个以 Base64 字符串编码并提供给我的文件(例如 myfile.jpeg)。 我无法知道文件类型是什么。 我想将字符串解码为文件(本例中为图像)。 我如何知道文件的类型(例如 jpeg)?

【问题讨论】:

标签: java base64 mime


【解决方案1】:

一般来说,base 64 编码的字符串绝对可以包含任何数据,因此无法知道它的文件类型。

要确定它是否是 JPEG 图像的实例,您需要对其进行 base64 解码,然后执行检查其magic number 之类的操作,这对于告诉您文件是什么很有用t。您仍然需要做更多的工作来确定它是否是有效的 JPEG 图像。

【讨论】:

    【解决方案2】:

    data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAMSURBVBhXY/j//z8ABf4C/qc1gYQAAAAAAASUVORK5CYII=

    是一个示例图像。只需用第一个斜线将其拆分并获取数组索引 1。假设图像来自受信任的客户端。

    【讨论】:

    • 这不是 base64 字符串。真正的 base64 从“iVBORw0K”开始。忘记之前的内容。你在真正的转换中没有这个。这正是我们想要得到的。
    猜你喜欢
    • 2019-10-27
    • 2015-01-31
    • 1970-01-01
    • 1970-01-01
    • 2011-08-29
    • 2019-03-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多