0

我有一个文件“1”、“2”、“3”等[...]的数据库。它们应该与“1.jpg”、“2.gif”、“3.png”一起下载,但此信息不可用。我的问题是如何通过打开或读取文件并知道它实际上是“.jpg”或者即使保存为 3.jpg 的图像实际上是 GIF 文件来获取信息。

我想为此编写脚本,以便我可以自动化并为大约 20 000 张图像的数据集获取正确的扩展名,因此手动逐一检查不是这里的解决方案。

4

1 回答 1

1

要更具体地扩展 Lattyware 的答案:

魔术数字:

GIF87a 签名
HEX:47 49 46 38 37 61
ASC:G..I..F..8..7..a.

GIF89a 签名
HEX:47 49 46 38 39 61
ASC:G..I..F..8..9..a.

JPEG 签名有一对。引用维基百科

JPEG 图像文件以 . 开头FF D8和结尾FF D9。JPEG/JFIF 文件包含“JFIF” ( 4A 46 49 46) 的 ASCII 代码作为以空字符结尾的字符串。JPEG/Exif 文件包含“Exif” ( 45 78 69 66) 的 ASCII 代码,也作为空终止字符串,后跟有关文件的更多元数据。

于 2013-05-07T18:10:02.533 回答