Tika外观模式

2024 年 8 月 29 日 | 阅读 2 分钟

在 Tika 中,文档解析可以使用 Tika facade 或使用 Auto-Detect Parser 来完成。两者都用于解析文档,而无需特定的解析器。

Apache Tika 提供了一个 facade 类来访问 Tika 功能。此类提供了实现解析和检测操作的方法。

它位于 org.apache.tika.Tika 包中。它包含各种构造函数和方法,如下所示。

Tika 构造函数

以下是 Tika Facade 类的构造函数。

构造函数描述
Tika()它用于使用默认配置创建 Tika facade。
Tika(Detector detector)它用于使用给定的检测器实例创建 Tika facade。
Tika(Detector detector, Parser parser)它用于使用给定的检测器和解析器实例创建 Tika facade。
Tika(Detector detector, Parser parser, Translator translator)它用于使用给定的检测器、解析器和翻译器实例创建 Tika facade。
Tika(TikaConfig config)它用于使用给定的配置创建 Tika facade。

Tika 方法

以下是 Tika Facade 类的方法。

方法描述
public String detect(byte[] prefix)它检测给定文档的媒体类型。
public String detect(Path path) throws IOException它检测给定路径下文件的媒体类型。
public String detect(File file) throws IOException它检测给定文件的媒体类型。
public String detect(URL url) throws IOException它检测给定 URL 处资源的媒体类型。
public String detect(String name)它检测具有给定文件名的文档的媒体类型。
public String translate(String text, String sourceLanguage, String targetLanguage)它将给定的文本字符串翻译成给定语言,或者从给定语言翻译过来。
public String translate(String text, String targetLanguage)它将给定的文本字符串翻译成给定的语言。
public Reader parse(InputStream stream, Metadata metadata) throws IOException它解析给定的文档并返回提取的文本内容。
public Reader parse(InputStream stream) throws IOException它解析给定的文档并返回提取的文本内容。
public Reader parse(Path path, Metadata metadata) throws IOException它解析给定路径下的文件并返回提取的文本内容。
public String parseToString(InputStream stream, Metadata metadata) throws IOException, TikaException它解析给定的文档并返回提取的文本内容。
public int getMaxStringLength()返回 parseToString 方法返回的字符串的最大长度。

Tika 示例

我们正在使用 Tika facade 从文本文件中提取内容。

输出

以下是 hello.txt 文件的内容。

Hello, Welcome to javatpoint