Ответ 1
Единственное, что я мог представить, это разбор списка, который поставляется с сервером Apache mime.types. Список поддерживается Apache Software Foundation и зависит от www.iana.org
Существуют ли какие-либо веб-службы, которые позволят мне предоставить расширение файла, и он вернет список возможных типов MIME?
Например:
http://mimetype.com/getMime/doc
Что может вернуться:
application/msword,application/docappl/text,application/vnd.msword,application/vnd.ms-word,application/winword,application/word,application/x-msw6,application/x-msword
Я не хочу использовать Urlmon.dll, и я предпочел бы, чтобы мне не приходилось обновлять свой собственный список.
Спасибо
Единственное, что я мог представить, это разбор списка, который поставляется с сервером Apache mime.types. Список поддерживается Apache Software Foundation и зависит от www.iana.org
Я только что создал это как часть моей службы mimetype ↔ icon
Например:
Он работает на appengine, поэтому он должен иметь высокую доступность.
Хотя это не совсем то, о чем вы просите, эта информация доступна через поиск по формату в PRONOM. Результат более мелкозернистый, чем типы MIME, но вы можете получить MIME-информацию, если она доступна для результатов (например, здесь, в "идентификаторах" раздел). Существует также инструмент DROID, доступный для доступа к этой информации через GUI, API Java или интерфейс командной строки.
Извините, что у меня нет службы webservice для этой задачи, но вы можете использовать страницу fileext и, возможно, проанализировать ответ если вы можете запросить расширение программно. Возможно, первый шаг в правильном направлении.
Этот веб-сервис может быть очень простым, небольшим хранилищем в DB/в памяти, которое может быть таким же простым, как Dictionary<String, String>
, и просто выполнять поиск ключей и возвращать результат.
Первый набор данных может быть (например) основан на http://www.webmaster-toolkit.com/mime-types.shtml.
Вероятно, проблема заключается в размещении такого веб-сервиса.
Я не знаю, есть ли веб-служба, которая бы это сделала, но библиотека libmagic (http://en.wikipedia.org/wiki/Libmagic) используется для идентификации типов файлов и может быть вам полезен.
Единственное, что приходит в голову, это разобрать вывод из http://www.file-extensions.org/
Он не даст вам тип MIME, но хорошая старая веб-служба Microsoft File Association может по-прежнему вам помочь. Вы обращаетесь к нему следующим образом:
http://shell.windows.com/fileassoc/0409/xml/redir.asp?Ext=xls
где 0409 означает английский (США), а xls - расширение файла. С положительной стороны, он будет там и постоянно обновляется... ну, пока Microsoft не решит вытащить вилку. Что может произойти в любое время.