Список всех MimeTypes на планете, сопоставленных с расширениями файлов? [закрытый]
есть ресурс, в котором перечислены все типы в наличии?
Я нашел несколько мест с менее чем 1000 mimeTypes, но тогда они все еще не включают в себя общие, такие как .Рар. ,Флорида. ,рубидий. ,с треском!
есть ли у кого полный список MIME-типов? Не до самых навязчивых "только для компании", но, по крайней мере, все те, которые мы могли бы использовать.
кроме того, я ищу список, который сопоставляет расширения файлов с mimeTypes.
13 ответов:
http://www.iana.org/assignments/media-types/ перечисляет "официальные" MIME-типы, но это не мешает никому создавать свои собственные, не регистрируя их в IANA.
вот самый современный мим.типы, поддерживаемые сообществом Apache HTTPD: http://svn.apache.org/viewvc/httpd/httpd/branches/2.2.x/docs/conf/mime.types?view=annotate
IANA перечисляет официальные. список, который включает в себя расширения файлов, которые я нахожу полезными, включен как
/etc/mime.types
в Debian и Ubuntu.
Я собрал типы MIME и расширения файлов из многих сайтов и списков, и вот результат:https://s-randomfiles.s3.amazonaws.com/mime/allMimeTypes.txt
Я также создал файл JSON:https://s-randomfiles.s3.amazonaws.com/mime/allMimeTypes.json
Пожалуйста, скажите мне, если что-то отсутствует или неправильно
iana отслеживает официальные, но, конечно, люди всегда могут заявить о собственных...
другими словами, сомнительно, что вы когда-нибудь получите полный список на планете.
также рассмотрим случай плагинов NPAPI, которые объявляют MIME-типы только для того, чтобы быть легко доступными... и эти мимы-типы могут быть вам не интересны по той или иной причине.
Если вы используете Java, вы можете использовать Apache Tika, который является мощной библиотекой для работы с типами файлов. С его помощью вы можете легко получить предпочтительное расширение, связанное с типом MIME с парой строк:
TikaConfig config = TikaConfig.getDefaultConfig(); MimeType mimeType = config.getMimeRepository().forName("image/png"); //Generally your textual mime type String extension = mimeType.getExtension(); // this would return the extension with the dot. For "image/png" returns ".png"
таким образом, вам не нужно возиться с загрузкой и разбором файла с ассоциациями, я нахожу это очень удобным. Вот как я проделал этот трюк.
есть хорошая таблица типов Mime, которую вы можете найти на https://drive.google.com/open?id=0By00BwrZ8886VUg3ak9faG5mTU0 Который обновляется 27-02-2017. Я уверен, что удовлетворить все ваши потребности мим типа.
есть хорошая таблица в классической книге" HTTP: The Definitive Guide " Гурли и Тотти (O'Reilly, с белкой на обложке) в приложении D. Она кажется полной и актуальной на момент написания книги (в 2002 году). Это было давно, но вы найдете там все старые фавориты, а также неясные "только для компании".
ISBN 1-56592-509-2,http://oreilly.com/catalog/9781565925090/
этот список сайтов еще некоторые, такие как '.файлы DOCX' http://www.freeformatter.com/mime-types-list.html#mime-types-list
пользователь Paul Tarjan сказал в комментарии:
есть довольно хороший список stdicon.com : stdicon.com/mimetypes
этот сайт больше не доступен, но самый последний архив https://web.archive.org/web/20161015175648/http://www.stdicon.com/mimetypes
обратите внимание, что этот сайт не упоминает "application/x-zip-compressed" (и это не из-за выхода косых черт), поэтому это не так идеальный.
Я взял список из Apache mime.типы по состоянию на пт 29 сентября 15:10: 29 2017 UTC и написал скрипт для преобразования его в отображение json. Этот формат слишком большой для сайте StackOverflow ответ. Вы можете найти его здесь мимы.json.
скрипт для создания сопоставления:
# mime_to_json.py # get the mime.types from # http://svn.apache.org/viewvc/httpd/httpd/trunk/docs/conf/mime.types?view=markup import sys import re import json mapping = {} with open(sys.argv[1], "r") as handle: for line in handle: line = line.strip() if line[0] == "#": continue parts = re.split("\s+", line) mime = parts[0] del parts[0] for ext in parts: mapping[ext] = mime print(json.dumps(mapping, indent=4, sort_keys=True))
мой список (около 680 типов) mimetype в xml здесь