31

Given some source file (or more generic - input stream), I need to find out

  • is it an image
  • if it is an image, then retrieve its type (png/jpeg/gif/etc)
  • retrieve exif data, if available

I looked at the API, but it is not clear how to get the type of image or Exif data.

4

3 回答 3

34

上一次我不得不这样做,几年前,标准 API 无法读取 EXIF 数据。这个库可以这样做:

http://www.drewnoakes.com/code/exif/

于 2012-07-03T11:55:10.700 回答
17

简单的答案:使用https://github.com/drewnoakes/metadata-extractor/

如果您很疯狂/勇敢/好奇,您可以通过读取前几个字节(这些是幻数)从流中获取图像类型。我相信 exif 通常也位于流的开头。

于 2012-07-03T11:57:50.003 回答
8

这是一个旧线程,但我最近正在这样做,发现 Apache Tika 库很有用。特别是用于分析通用流以检测其中的内容。

认为它可能会帮助其他人。

http://tika.apache.org/

于 2014-02-10T21:21:12.310 回答