java mimetype_在Java中获取文件的Mime类型

我只是想知道大多数人如何从Java中的文件中获取mime类型? 到目前为止,我已经尝试了两个工具:JMimeMagic&Mime-Util。

第一个给了我内存异常,第二个没有正确关闭它的流。 我只是想知道是否有其他人有他们使用和正常工作的方法/库?

rgagnon.com/javadetails/java-0487.html上提供了有关可用库的详细概述

我在这里使用了作为答案发布的类:stackoverflow.com/a/10140531/293280

蒂卡应该是现在的答案。 下面的其他答案说明了与Tika的许多依赖关系,但我没有看到tika-core。

@ javamonkey79当我们使用TIka时,它会隐藏文件并且它不再可用。 String contentType = tika.detect(is)。

在Java 7中,您现在可以使用Files.probeContentType(path)。

这非常有用,因为mime-util网站似乎已关闭,我无法判断库是否正在维护!

这很好用,但我还没有找到一种方法来添加我理解的更多文件类型。例如,ISO映像返回null,.zip存档甚至是ini配置文件也是如此。

@Chris你太棒了! :)

这是一件美丽的事情。

@ james.garriss和它给我的积分比我给过的任何其他答案都多!疯了,是吗? :)

请注意,Files.probeContentType(Path)在多个操作系统上存在错误,并且已经提交了大量错误报告。我在使用ubuntu但在Windows上失败的软件时遇到了问题。似乎在Windows上F

你可能感兴趣的:(java,mimetype)