java 什么是mime_如何从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定义,并包括这些定义。

2020-09-24

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值