Строка формата изображения IANA из двоичного потока

Как я могу получить официальный тип изображения IANA (если есть) бинарного потока? Я хотел бы избежать доверия к расширениям файлов и неопределенным предположениям при обращении с изображениями. Предпочтительно некоторая команда, использующая общие инструменты, такие как identify ImageMagick, или, при необходимости, некоторый язык программирования.

One Solution collect form web for “Строка формата изображения IANA из двоичного потока”

Вы можете использовать команду file . Он доступен по большинству дистрибутивов Linux по умолчанию, и вы можете получить его для Windows через пакет файлов GnuWin32 .

Назовите его:

 $ file --mime-type clock.png clock.png: image/png 

Обратите внимание, что это не на 100% точно – я не думаю, что что-то может быть теоретически.

Если вы хотите сделать это в коде, есть libmagic который предоставляет C api . Он может обрабатывать либо файлы, либо буферы в памяти. ( file использует это в Linux.)

Linux и Unix - лучшая ОС в мире.