当前位置: 首页 > 知识库问答 >
问题:

基于文件名检测内容类型

漆雕硕
2023-03-14

共有1个答案

艾璞瑜
2023-03-14

您可以使用普通的Apache Tika检测器接口为InputStream传入null,并提供文件名。

您的代码如下所示:

TikaConfig config = new TikaConfig();

Metadata metadata = new Metadata();
metadata.set(Metadata.RESOURCE_NAME_KEY, filename);
String mimetype = config.getDetector().detect(null, metadata);

为了更加简化,如果您使用Tika facade类,您只需执行以下操作:

Tika tika = new Tika();

String mimetype = tika.detect(filename);
 类似资料:
  • 我一直试图仅使用文件内容检测MIME类型,使用Apache Tika Core和Apache Tika Parser1.23 jars。下面是用于相同内容的代码: Tika无法检测扩展名为。tmp(text/plain file)和iso-8859-1字符集的文件的内容类型,内容如下: èé 通过以下方式正确检测具有相同配置和以下内容的文件: 000000000000000000000000000

  • 我试图实现JavaServlet过滤器,它修改html响应。 我的过滤器类的方法看起来像这样: 对于每一个回复,我都试图弄清楚它是否是HTML。如果是这种情况,我会做一些修改,但我有以下问题:在请求jsf文件时,返回(也返回)。在我的浏览器开发工具中,我可以看到“Content Type”标题的值为“text/html”;charset=UTF-8',但在这种情况下,为什么返回? 有没有其他方法来

  • 让我们创建一个Potion文件作为插件的测试样本。 :::text factorial = (n): total = 1 n to 1 (i): total *= i. total. 10 times (i): i string print '! is: ' print factorial (i) string print

  • 我已经成功地使用OpenNLP进行文档分类,并且能够从训练过的样本中提取名称并使用正则表达式。 我想知道是否也可以根据名字(或者更一般地说,主语)在句子中的位置来提取名字? 例如。而不是使用先验已知的具体名称进行培训,例如

  • 问题内容: 我正在使用Selenium 2 Java API与网页进行交互。我的问题是:如何检测链接目标的内容类型? 基本上,这是背景:单击链接之前,我想确保响应是HTML文件。如果没有,我需要以其他方式处理它。因此,假设有一个PDF文件的下载链接。应用程序应直接读取该URL的内容,而不是在浏览器中打开它。 我们的目标是拥有一个能够自动知道当前位置是HTML,PDF,XML或其他类型的应用程序,以