如何从Java中的MIME类型确定适当的文件扩展名

如何从Java中的MIME类型确定适当的文件扩展名,第1张

如何从Java中的MIME类型确定适当的文件扩展名

正如一些评论者所指出的那样,mimetypes和文件扩展名之间没有通用的1:1映射…某些mimetypes具有多个可能的扩展名,许多扩展名由多个mimetypes共享,而某些mimetypes没有扩展名。

在任何可能的情况下,最好存储mimetype并继续使用它,而不必考虑扩展名。

就是说,如果您确实想要获得给定mimetype的最常见文件扩展名,那么Tika是一个不错的选择。Apache
Tika
拥有大量已知的mimetypes,对于其中许多mimetypes,它也知道mime魔术可用于检测,常见扩展名,描述等。

如果您想获得最常见的JPEG文件扩展名,那么如本Apache
Tika单元测试所示,您只需执行以下 *** 作:

  MimeTypes allTypes = MimeTypes.getDefaultMimeTypes();  MimeType jpeg = allTypes.forName("image/jpeg");  String jpegExt = jpeg.getExtension(); // .jpg  assertEquals(".jpg", jpeg.getExtension());

关键是您需要加载Tika
jar中捆绑的xml文件,以获取所有mimetypes的定义。如果您也可能要处理自定义的模仿类型,那么Tika支持这些,并将第一行更改为:

  TikaConfig config = TikaConfig.getDefaultConfig();  MimeTypes allTypes = config.getMimeRepository();

通过使用TikaConfig方法获取MimeType,Tika还将检查您的类路径中的自定义mimetype定义,并包括这些定义。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5560680.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-14
下一篇 2022-12-14

发表评论

登录后才能评论

评论列表(0条)

保存