Ziemlich einfache Frage, kann sie aber nirgendwo online finden. Ich versuche ein Programm zu erstellen, das mir je nach Dateityp die Erweiterung gibt.
file
mime-types
Joe Scotto
quelle
quelle
Antworten:
Nein,
image/jpg
ist nicht dasselbe wieimage/jpeg
, wird nurimage/jpeg
als tatsächlicher MIME-Typ für JPEG-Dateien erkannt.Siehe https://tools.ietf.org/html/rfc3745 , https://www.w3.org/Graphics/JPEG/ .
Das Bereitstellen des falschen Inhaltstyps für
image/jpg
den Internet Explorer kann zu Problemen führen (siehe http://www.bennadel.com/blog/2609-internet-explorer-aborts-images-with-the-wrong-mime-type.htm) .quelle
image/jpeg jpeg jpg;image/jpg jpeg jpg;
Für diejenigen, die es helfen könnten, verwende ich diese Liste als Referenz, um meinen Inhaltstyp zu definieren, wenn ich mit Bildern in meiner App arbeiten muss.
Es heißt, dass die JPG-Erweiterung mit deklariert werden kann
Content-type : image/jpeg
Es gibt kein
image/jpg
Attribut für den Inhaltstyp.quelle
tl; dr die "Standards" sind ein Durcheinander; es kommt darauf an, wen du fragst!
Insgesamt scheint es keinen MIME-Typ zu geben
image/jpg
. In der Praxis verarbeitet jedoch fast jede Software Bilddateien mit dem Namen "*.jpg
" einwandfrei.Dieses spezielle Thema ist verwirrend, da die unterschiedliche Zuordnung der Dateinamenerweiterung zu einem MIME-Typ davon abhängt, welche Organisation die Tabelle der Dateinamenerweiterungen für MIME-Typen erstellt hat. Mit anderen Worten, die Dateinamenerweiterung
.jpg
kann viele verschiedene Dinge sein.Hier sind beispielsweise drei "vollständige Listen" und ein RFC, die sich je nach Dateinamenerweiterungen im JPEG-Bildformat und den zugehörigen MIME-Typen unterscheiden.
.jfif
,.jfif-tbnl
,.jpe
,.jpeg
,.jpg
→image/jpeg
.jfif
,.jpe
,.jpeg
,.jpg
→image/pjpeg
.jpeg
,.jpg
→image/jpeg
.jpeg
,.jpg
→image/x-citrix-jpeg
.pjpeg
→image/pjpeg
(in diesem Dokument werden " Namen" und nicht " Dateinamenerweiterungen " aufgeführt)
jpg
nicht genanntjpeg
→ siehe RFC 2045 (keine Erwähnung), siehe RFC 2046 →image/jpeg
13JPEG
→video/JPEG
jpeg2000
→video/jpeg2000
jpm
→image/jpm
( JPEG 2000 )jpx
→image/jpx
( JPEG 2000 )vnd.sealedmedia.softseal.jpg
→image/vnd.sealedmedia.softseal.jpg
.jpg
Dateierweiterung nicht erwähnt.jpeg
Dateierweiterung nicht erwähnt.jp2
,.jpg2
→image/jp2
( JPEG 2000 ) 9.jpf
,.jpx
→image/jpx
( JPEG 2000 ISO-JPEG2000-2-codierte Bilddaten ) 10.mj2
,.mjp2
→video/mj2
( Motion JPEG 2000 ) 11.jpm
,.jpgm
→image/jpm
( JPEG 2000-Profile und -Erweiterungen ) 12Diese "vollständigen Listen" und RFC haben keinen MIME-Typ
image/jpg
! Aber für MIME - Typimage/jpeg
einige Listen Sie haben unterschiedliche Dateinamenerweiterungen (.jpeg
,.jpg
, ...). Andere Listen erwähnen nichtimage/jpeg
.Es gibt auch verschiedene Arten von JPEG-Bildformaten (z. B. progressives JPEG-Bildformat , JPEG 2000 usw.) und "JPEG-Erweiterungen", die sich in der Dateinamenerweiterung und dem deklarierten MIME-Typ möglicherweise überschneiden oder nicht.
Eine andere verwirrende Sache ist, dass RFC 3745 anscheinend nicht mit IANA-Medientypen übereinstimmt, der RFC 3745 jedoch das Dokument IANA-Medientypen informieren soll . Zum Beispiel in RFC 3745
.jpf
ist die bevorzugte Dateierweiterung für,image/jpx
aber in IANA-Medientypen ist der Namejpf
nicht vorhanden (und das IANA-Dokument verweist auf RFC 3745 !).Eine weitere verwirrende Sache ist, dass IANA Media Types "Namen" auflistet, jedoch keine "Dateinamenerweiterungen". Dies ist absichtlich, verwirrt jedoch das Bestreben, Dateinamenerweiterungen MIME-Typen zuzuordnen.
Eine weitere verwirrende Sache: es ist „ Mime “ oder „ MIME “ oder „ MIME - Typ “ oder „ MIME - Typ “ oder „ mime / Typ “ oder „ Medientyp “⁉ 😧
Das offizielle scheinbare Dokument von der IANA ist überraschend unzureichend. Es ist kein MIME-Typ für die Dateierweiterung registriert,
.jpg
es gibt jedoch die ungeradevnd.sealedmedia.softseal.jpg
. Die Dateierweiterung.JPEG
wird nur alsvideo
Typ bezeichnet, während die Dateierweiterung.jpeg
ein Bildtyp ist (wann spielten Klein- und Großbuchstaben eine Rolle!?). Gleichzeitigjpeg2000
ist Typvideo
noch RFC 3745 betrachtet JPEG 2000 alsimage
Typ! Die IANA-Liste scheint unternehmensspezifische JPEG-Formate (zvnd.sealedmedia.softseal.jpg
. B. ) zu berücksichtigen .Aufgrund der vorherigen Verwirrungen ist es schwierig, ein branchenweit anerkanntes kanonisches Dokument zu finden, das Dateinamenerweiterungen MIME-Typen zuordnet, insbesondere für das JPEG-Bilddateiformat.
Verwandte Frage " Liste ALLER MimeTypes auf dem Planeten, die Dateierweiterungen zugeordnet sind? ".
quelle
Wichtig hierbei ist, dass der MIME-Typ nicht mit der Dateierweiterung übereinstimmt. Manchmal haben sie jedoch den gleichen Wert.
https://www.iana.org/assignments/media-types/media-types.xhtml enthält eine Liste der registrierten Mime-Typen, obwohl Sie nichts daran hindert, Ihre eigenen zu erstellen, solange Sie beide senden und das empfangende Ende. Hier kommt Microsoft ins Spiel.
Wo es viel Verwirrung gibt, ist die Tatsache, dass Betriebssysteme ihre eigene Art haben, Dateitypen zu identifizieren, indem sie das Ende des Dateinamens verwenden, der als Erweiterung bezeichnet wird. In modernen Betriebssystemen ist der gesamte Name eine lange Zeichenfolge, in primitiveren Betriebssystemen wird er jedoch als separates Attribut behandelt.
Das Betriebssystem, das die Verwirrung verursachte, ist MSDOS, das die Erweiterung auf 3 Zeichen beschränkt hatte. Diese Einschränkung wird bis heute bei Geräten wie SD-Karten übernommen, die Daten weiterhin auf dieselbe Weise speichern.
Ein Nebeneffekt dieser Einschränkung besteht darin, dass einige Dateierweiterungen, z. B.
.gif
deren MIME-Typ, übereinstimmenimage/gif
, während andere gefährdet sind. Dies schließt ein,image/jpeg
dessen Erweiterung auf verkürzt wird.jpg
. Selbst in modernen Windows-Versionen, in denen die Einschränkung aufgehoben wird, lässt Microsoft die Vergangenheit nie los. Daher ist die Dateierweiterung immer noch die verkürzte Version.Vorausgesetzt, dass:
Die kurze Antwort lautet:
image/jpg
, also lautet die Antwort, dass es nicht dasselbe ist wieimage/jpeg
Während wir gerade dabei sind ...
Ältere Versionen von Internet Explorer haben sich die Freiheit genommen,
jpeg
Dateien mit dem Mime-Typ von hochzuladenimage/pjpeg
, was natürlich nur mehr Arbeit für alle anderen bedeutet. Sie haben auchpng
Dateien als hochgeladenimage/x-png
.quelle
Nicht haben,
image/jpg
aber Sie können verwenden.jpg
Beispiel
Quelle: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/file#Unique_file_type_specifiers
quelle