File 是MIME类型';图像/jpg';与'相同;图像/jpeg';?
这个问题很简单,但似乎在网上的任何地方都找不到。我正在尝试制作一个程序,根据文件类型将为我提供扩展名。否,File 是MIME类型';图像/jpg';与'相同;图像/jpeg';?,file,mime-types,File,Mime Types,这个问题很简单,但似乎在网上的任何地方都找不到。我正在尝试制作一个程序,根据文件类型将为我提供扩展名。否,image/jpg与image/jpeg不同 您应该使用image/jpeg。只有image/jpeg被识别为jpeg文件的实际mime类型 见 将不正确的内容类型image/jpg提供给IE可能会导致问题,请参阅。对于那些可能有帮助的内容,当我必须处理应用程序上的图像时,我使用它作为参考来定义我的内容类型 它说jpg扩展可以用内容类型声明:image/jpeg 内容类型没有任何image/
image/jpg
与image/jpeg
不同
您应该使用image/jpeg
。只有image/jpeg
被识别为jpeg文件的实际mime类型
见
将不正确的内容类型
image/jpg
提供给IE可能会导致问题,请参阅。对于那些可能有帮助的内容,当我必须处理应用程序上的图像时,我使用它作为参考来定义我的内容类型
它说jpg扩展可以用内容类型声明:image/jpeg
内容类型没有任何image/jpg
属性。tl;dr这些“标准”是一堆乱七八糟的东西;这取决于你问谁强>
总的来说,似乎没有MIME类型image/jpg
。然而,实际上,几乎所有的软件都可以处理名为“*.jpg
”的图像文件。这个特定主题令人困惑,因为与MIME类型关联的文件扩展名的不同关联取决于哪个组织创建了MIME类型的文件扩展名表。换句话说,文件扩展名
.jpg
可以是许多不同的东西
例如,这里有三个“完整列表”和一个RFC,它们具有不同的JPEG图像格式文件扩展名和相关的MIME类型
- ()
,.jfif
,.jfif tbnl
,.jpe
,.jpeg
→ <代码>图像/jpeg.jpg
,.jfif
,.jpe
,.jpeg
→ <代码>图像/pjpeg.jpg
- ()
,.jpeg
→ <代码>图像/jpeg.jpg
,.jpeg
→ <代码>图像/x-citrix-jpeg.jpg
→ <代码>图像/pjpeg.pjpeg
- 列表()
(本文档列出的是“名称”,而不是“文件扩展名”)
未提及jpg
→ 参见RFC 2045(未提及),参见RFC 2046→ <代码>图像/jpegjpeg
→ <代码>视频/JPEGJPEG
→ <代码>视频/jpeg2000jpeg2000
→ <代码>图像/jpm(JPEG 2000)jpm
→ <代码>图像/jpx(JPEG 2000)jpx
→ <代码>图像/vnd.sealedmedia.softseal.jpgvnd.sealedmedia.softseal.jpg
-
未提及文件扩展名.jpg
未提及文件扩展名.jpeg
,.jp2
→ <代码>图像/jp2(JPEG 2000).jpg2
,.jpf
→ <代码>图像/jpx(JPEG 2000 ISO-JPEG2000-2编码图像数据).jpx
,.mj2
→ <代码>视频/mj2(运动JPEG 2000).mjp2
,.jpm
→ <代码>图像/jpm(JPEG 2000配置文件和 扩展).jpgm
image/jpg
!但是对于MIME类型image/jpeg
某些列表确实具有不同的文件扩展名(.jpeg
,.jpg
,…)。其他列表没有提到图像/jpeg
此外,还有不同类型的JPEG图像格式(例如渐进式JPEG图像格式、JPEG 2000等)和“JPEG扩展名”,它们在文件扩展名和声明的MIME类型中可能重叠,也可能不重叠
另一件令人困惑的事情是RFC 3745似乎与IANA媒体类型不匹配,但相同的RFC应该通知IANA媒体类型文档。例如,在RFC 3745.jpf
是图像/jpx
的首选文件扩展名,但在IANA媒体类型中,名称jpf
不存在(IANA文档引用RFC 3745!)
另一件令人困惑的事情是IANA媒体类型列出了“名称”,但没有列出“文件扩展名”。这是有意的,但是混淆了将文件扩展名映射到MIME类型的努力
另一件令人困惑的事情:是“mime”,还是“mime类型”,还是“mime类型”,还是“mime/type”,还是“媒体类型”——这里需要注意的重要一点是,mime类型与文件扩展名不同。然而,有时它们具有相同的值 包括一个注册Mime类型的列表,尽管没有什么可以阻止您创建自己的Mime类型,只要您同时处于发送端和接收端。这就是微软在这方面的作用 令人困惑的是,操作系统通过使用文件名的末尾(称为扩展名)来识别文件类型,有自己的方法。在现代操作系统中,整个名称是一个长字符串,但在更原始的操作系统中,它被视为一个单独的属性 造成混乱的操作系统是MSDOS,它将扩展名限制为3个字符。这一限制至今仍存在于SD卡等设备中,这些设备仍然以相同的方式存储数据 此限制的一个副作用是,某些文件扩展名(如
.gif
与其Mime类型匹配,image/gif
),而其他文件扩展名则受到影响。这包括image/jpeg
,其扩展名缩短为.jpg
。即使在现代Windows中,限制被解除,微软也从未放弃过去,因此文件扩展名仍然是缩短版
鉴于: