본문 바로가기

Apache Tika

Java를 통해서 파일을 읽어 오는 방법을 소개하겠습니다.

아파치 티카는 PPT, CSV ,PDF 등 다양한 형태의, 파일의 메타 데이터와 텍스트를 감지하고 추출하는 라이브러리입니다.

지원되는 포맷을 아래와 같다고 합니다.

https://tika.apache.org/1.25/formats.html

tika-core - 핵심 라이브러리 (파서 없음)

tika-parsers - core + Tika Parser interface (두가지)

위 두가지 라이브러리를 사용하여 파일을 읽을 수 있습니다.

<!-- https://mvnrepository.com/artifact/org.apache.tika/tika-core -->
<dependency>
    <groupId>org.apache.tika</groupId>
    <artifactId>tika-core</artifactId>
    <version>2.0.0-ALPHA</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.tika/tika-parsers -->
<dependency>
    <groupId>org.apache.tika</groupId>
    <artifactId>tika-parsers</artifactId>
    <version>2.0.0-ALPHA</version>
    <type>pom</type>
</dependency>

 

위 라이브러리를 추가 후 

public String parseExample() throws IOException, SAXException, TikaException {
    AutoDetectParser parser = new AutoDetectParser();
    BodyContentHandler handler = new BodyContentHandler();
    Metadata metadata = new Metadata();
    try (InputStream stream = ParsingExample.class.getResourceAsStream("test.doc")) {
        parser.parse(stream, handler, metadata);
        return handler.toString();
    }
}
public String parseToPlainText() throws IOException, SAXException, TikaException {
    BodyContentHandler handler = new BodyContentHandler();
 
    AutoDetectParser parser = new AutoDetectParser();
    Metadata metadata = new Metadata();
    try (InputStream stream = ContentHandlerExample.class.getResourceAsStream("test.doc")) {
        parser.parse(stream, handler, metadata);
        return handler.toString();
    }
}

위와 같은 방식으로 파일을 읽을 수 있다.

tika.apache.org/1.25/examples.html

 

Apache Tika – Tika API Usage Examples

Apache Tika API Usage Examples This page provides a number of examples on how to use the various Tika APIs. All of the examples shown are also available in the Tika Example module in SVN. Tika provides a number of different ways to parse a file. These prov

tika.apache.org

 

엉망진창

개인 블로그 입니다. 코딩, 맛집, 정부정책, 서비스, ~방법 등 다양한 정보를 소개합니다