gpt4 book ai didi

java - 动态识别base64编码的文件类型

转载 作者:行者123 更新时间:2023-12-02 09:40:11 28 4
gpt4 key购买 nike

我正在使用 java 8 base64 编码和解码库,同时我成功编码了 jpg/pdf/png 文件,并且能够再次将该 base64 字符串保存为 jpg/pdf/png。但我的要求是动态检测文件类型,然后以各自的方式将该字符串保存到图像文件中。例如,如果我获得一个 Base64 pdf 文件,那么我的应用程序会自动检测到该字符串是 Base64 pdf 字符串,并将该字符串保存为 pdf。

最佳答案

大多数众所周知的文件类型在文件开头都有“魔数(Magic Number)”。这些字节无需知道文件扩展名即可识别文件类型。例如:

  • 所有 JPEG 开头均为:FF D8 FF DB
  • 所有 PDF 开头均为:25 50 44 46 2d
  • 所有 PNG 开头均为:89 50 4E 47 0D 0A 1A 0A

这些发现于:https://en.wikipedia.org/wiki/List_of_file_signatures ,但如果此列表不包含您需要的格式的值,您可以查找该格式的已发布规范。

解码完 Base64 字符串后,您可以检查第一个字节以查看它们是否与这些常量匹配,并适本地处理它们。

关于java - 动态识别base64编码的文件类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57146701/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com