个性化阅读
专注于IT技术分析

Tika自动检测器解析器示例

本文概述

Tika AutoDetectParser是一个类, 它可以自动找出文件具有哪种内容, 然后调用适当的解析器。

此类包含下面给出的构造函数和方法。

有AutoDetectParser构造函数

Constructor Description
公共AutoDetectParser() 它使用默认的Tika配置创建自动检测的解析器实例。
公共AutoDetectParser(检测器) 它创建一个自动检测的解析器实例。
公共AutoDetectParser(解析器…解析器) 它使用指定的解析器集创建一个自动检测的解析器实例。
公共AutoDetectParser(检测器检测器, 解析器…解析器) 它使用指定的检测器和解析器创建一个自动检测解析器实例。
公共AutoDetectParser(TikaConfig配置) 使用指定的set tika配置创建自动检测的解析器实例。

仅使用了AutoDetectParser方法

以下是Tika AutoDetectParser类的方法。

Method Description
公共检测器getDetector() 它返回此解析器用来自动检测文档类型的类型检测器。
公共无效setDetector(检测器) 它将解析器使用的类型检测器设置为自动检测文档的类型。
公共无效解析(InputStream流, ContentHandler处理程序, 元数据元数据, ParseContext上下文)引发IOException, SAXException, TikaException 它用于解析输入文件。
公共无效解析(InputStream流, ContentHandler处理程序, 元数据元数据)引发IOException, SAXException, TikaException 它使用空的ParseContext调用Parser.parse(InputStream, ContentHandler, Metadata, ParseContext)方法。

Tika AutoDetectParser示例

import java.io.IOException;
import java.io.InputStream;
import org.apache.tika.exception.TikaException;
import org.apache.tika.metadata.Metadata;
import org.apache.tika.parser.AutoDetectParser;
import org.apache.tika.sax.BodyContentHandler;
import org.xml.sax.SAXException;

// Parsing using Auto-Detect parser
public class AutoDetectParseExample {
	public static void main(String[] args) throws IOException, SAXException, TikaException {
		System.out.println(parseToPlainText());
	}
	public static String parseToPlainText() throws IOException, SAXException, TikaException {
	    BodyContentHandler handler = new BodyContentHandler();
	 
	    AutoDetectParser parser = new AutoDetectParser();
	    Metadata metadata = new Metadata();
	    try (InputStream stream = AutoDetectParseExample.class.getResourceAsStream("Hello.txt")) {
	        parser.parse(stream, handler, metadata);
	        return handler.toString();
	    }
	}
}

输出

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

Hello Welcome to srcmini
赞(0) 打赏
未经允许不得转载:srcmini » Tika自动检测器解析器示例
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

觉得文章有用就打赏一下文章作者

微信扫一扫打赏