首页 > 解决方案 > 如何在 Java 中识别文件类型?

问题描述

自从之前提出这个问题和以前的答案以来已经有几年了,例如,

如何可靠地检测文件类型?

显示一些旧库,其中大部分似乎不再维护。所以我认为这个问题值得再问一次。

我需要的是一种基于内容识别文件类型的好方法。类似于fileLinux 中的命令。特别是我对加密文件的类型检测很感兴趣。

我的文件可能称为 client.crt,但实际内容使用 PEM 格式,因此文件扩展名在这里并不真正可用。此外,对于 Linux,文件扩展名是可选的。

Apache TIKA 似乎还在开发中,但它的大小约为 75MB。此外,它似乎对加密文件的支持有限。

我知道这是一件复杂的事情,并且该file命令是一个非常先进的工具。有谁知道如何以一种好的方式处理这个问题?

BR帕特里克

编辑

看起来这个问题已经得到了密切的投票。我并不是真的在寻找可以做到这一点的图书馆。使用 Java 标准库的代码示例已经足够好,但是从头开始做起来太乏味了(因此没有代码示例)。一个好的代码示例会很棒,这使得它非常适合堆栈溢出。

标签: javafile

解决方案


推荐阅读