NET-библиотека для определения типа файла/MIME

Мне нужна NET-библиотека идентификации типов файлов (лучше всего управляемая на 100%) с функциональностью, аналогичной TrIDEngine. В конечном итоге мне нужно было бы передать Stream, представляющий контент, и ожидать возвращаемого значения либо в виде типа MIME, либо в виде некоторого перечисления/строки, легко сопоставленного с типом MIME.

Я хочу обнаружить всего несколько типов мультимедиа, таких как WMV, WAV, MP3, и распространенные форматы изображений, такие как JPEG, PNG, GIF и BMP.

Проблема с TrIDEngine заключается в том, что он появляется только в форме утилиты командной строки и ожидает физический путь к файлу, а не требуемый Stream.


person wpfwannabe    schedule 02.02.2011    source источник
comment
На веб-сайтах TriDEngine в дополнение к версии для командной строки указана вызываемая версия NET Framework. Я не знаком с продуктом, но, похоже, в нем есть то, что вам нужно   -  person Sparky    schedule 02.02.2011
comment
Спасибо. Даже если это правда (а я не смог найти), в ней все равно отсутствует поддержка нужного Stream интерфейса.   -  person wpfwannabe    schedule 02.02.2011


Ответы (1)


Если вам просто нужно определить несколько типов файлов, вы можете найти формат в Википедии и самостоятельно проверить заголовок или «магические» байты. Обычно вы можете определить тип файла по первым нескольким байтам, поэтому вы можете прочитать несколько байтов из потока и проверить их самостоятельно. Не совсем то, о чем вы просите, но это не должно быть слишком сложно только для нескольких типов.

person toby    schedule 30.06.2011