是否有任何类似于unix的命令file
的java库?
即:
$ file somepicture.png
somepicture.png PNG image, 805 x 292, 8-bit/color RGB, non-interlaced
file命令是一个很好的工具。我需要的东西可以告诉我文件是否真的是我想要的。 (即图片,文件等)
我知道我可以运行命令file
,但我正在寻找一个java库,而不是运行实际的unix命令。
答案 0 :(得分:16)
快速谷歌搜索(对于公认的非显而易见的)"java magic file detection"会显示一篇相当不错的文章"Get the Mime Type from a File",建议您使用以下其中一项:
答案 1 :(得分:7)
从Java 1.7开始,您可以使用Files.probeContentType()来探测文件。开箱即用它使用平台上的机制来猜测内容类型,或者你可以根据需要插入自己的探测器。
答案 2 :(得分:3)
您可以查看jmimemagic(tutorial)。我们已经使用它一段时间来验证上传的图像。到目前为止没问题。
答案 3 :(得分:2)
我不确定这正是您所寻找的,但以下链接可以帮助您:
答案 4 :(得分:1)
看看mime-utils。 它适用于内容和/或扩展。
答案 5 :(得分:1)
答案 6 :(得分:0)
正在寻找相同的东西并发现了这一点:https://github.com/j256/simplemagic-它似乎是'file'的副本,它甚至使用了内置魔术文件的文件副本。