【问题标题】:How to detect the file format with it's content [closed]如何检测文件格式及其内容[关闭]
【发布时间】:2015-03-30 08:12:27
【问题描述】:

如果您使用记事本打开 *.gif 文件,该文件以 GIF89 开头

但对于 *.jpeg 文件,第一个字符不是 GIF89 之类的东西

如何检测我的文件是 *.jpeg 及其文件首字符?

【问题讨论】:

  • 在 Linux 上,libmagic1 可能会有所帮助。
  • C# 中有一个简单的代码 sn-p 可以做到这一点,看看这个SO question。您可以轻松地将其转换为 C 或 C++。
  • @S.T.这个问题最初可能被标记为“C#”吗?目前不是。

标签: c++ c


【解决方案1】:

根据The JPEG File Interchange Format

  • (在 2 字节“SOI”标记之后...)
  • 接下来的 2 个字节将是 0xFFE0
  • 接下来的 2 个字节对于此检测并不重要
  • 接下来的 5 个字节将是 "JFIF"(包括空终止符)

【讨论】:

  • .exe 文件呢? / 我们能否通过它的内容检测文件是否可运行
  • @user3105142 这是一个新问题。随意提问 - 这样你会获得更多的观众。
  • :) 我在一个新问题中问它link
猜你喜欢
  • 2018-06-24
  • 2018-01-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-04-06
  • 2017-10-30
  • 1970-01-01
相关资源
最近更新 更多