Tika文件类型检测介绍和示例

文档检测是识别文档类型的过程。文档类型不同, 文本/纯文本表示文本文件, 图像/ jpeg表示图像类型文件。
Tika检测到文档类型, 以便它可以调用适当的解析器以提取内容和元数据。
Tika支持MIME(多用途Internet邮件扩展)中提到的所有文档类型。
Internet号码分配机构(IANA)目前支持八种正式的顶级类型和数千种子类型。
【Tika文件类型检测介绍和示例】以下是顶级媒体类型。

顶级类型 Description
Text/* 它表示基于文本的文档, 例如HTML, CSS, CSV和纯文本。
Image/* 所有图像子类型, 例如JPEG, 可移植网络图形, GIF等。
Audio/* 它包括音乐和其他音频格式, 例如MP3和Ogg音频。
Video/* 视频格式, 例如QuickTime和Mp4。
Model/* 用于在各个领域表达物理或行为模型的文件格式。例如用于表示3D模型的VRML格式
Application/* 特定于应用程序的文档格式不一定适合其他任何顶级类别。例如PDF和Microsoft Word(应用程序/ msword)文档。
Message/* 通过Internet和其他网络发送的电子邮件和其他消息类型。
Multipart/* 它显示了相关组件文档的容器格式。类似于message / *类型, multipart / *文档是通过网络传输的消息。
Tika的媒体类型媒体类型是文件的类型, 它们告诉计算机哪些应用程序与哪些文件相关联。
准确检测媒体类型是Tika完美处理的一项主要任务。
Tika提供Java API和类级别的支持以与Tika MIME数据库进行交互
Tika拥有自己的媒体类型注册表, 该注册表存储IANA注册的类型以及实际使用的其他已知类型。
Tika使用MediaType类来表示媒体类型。此类的实例是不可变的, 并且仅包含媒体类型的类型/子类型对和可选的name = value参数。
以下是一些常用的文件扩展名。见表。
Extension File Format 媒体类型
.txt 文字文件 text/plain
.html HTML页面 text/html
.xls Microsoft Excel电子表格 application/vnd.ms-excel
.jpg JPEG image image/jpeg
.mp3 MP3音频 audio/mpeg
.zip Zip archive application/zip
Tika使用其detect()方法来检测文档类型。看一个例子。
package tikaexample; import java.io.File; import java.io.IOException; import org.apache.tika.Tika; public class SimpleTypeDetect { public static void main(String[] args) throws IOException {Tika tika = new Tika(); String type = tika.detect(new File("srcmini.txt")); System.out.println("file type : " + type); }}

输出
File type : text/plain

    推荐阅读