Apache Tika 中的 CSV 检测器

CSV Detector in Apache Tika

我正在使用 Apache 的 Java 库 Tikatika-core 版本 1.10)。

存在 CSV 文件的 org.apache.tika.detect.Detector? MIME 类型应该是 text/csv,但我找不到类似的东西。

我想使用很好的detect方法

当前 (v1.10) tika-mimetypes.xml 定义 text/csv 如下:

<mime-type type="text/csv">
  <glob pattern="*.csv"/>
  <sub-class-of type="text/plain"/>
</mime-type>

这意味着 Apache Tika 仅通过文件名进行检测。如果您使用 Tika#detect(File),Tika 会将文件名(在 Metadata.RESOURCE_NAME_KEY 键下)添加到传递给检测器的 Metadata 对象。 URL 也有类似的行为。

如果你想注入文件名,你可以使用类似的东西:

new Tika().detect(is, fileName)

如果您想根据内容进行一些启发,请随时在 Tika's JIRA 中查看并提交工单。