[java] Apache Tika 에서 텍스트 인쇄
Apache Tika는 Java 기반의 오픈 소스 라이브러리로써, 다양한 파일 형식의 데이터를 추출하고 처리할 수 있는 기능을 제공합니다. 이번에는 Apache Tika를 사용하여 텍스트를 인쇄하는 방법에 대해 알아보겠습니다.
Apache Tika 설치
Apache Tika를 사용하기 위해서는 먼저 해당 라이브러리를 설치해야 합니다. Maven을 사용한다면 pom.xml
파일에 아래의 의존성을 추가해주세요:
<dependency>
<groupId>org.apache.tika</groupId>
<artifactId>tika-core</artifactId>
<version>1.26</version>
</dependency>
Gradle을 사용한다면 build.gradle
파일에 아래의 의존성을 추가해주세요:
implementation 'org.apache.tika:tika-core:1.26'
의존성을 추가한 후, 프로젝트를 다시 빌드해주세요.
텍스트 추출 예제
이제 Apache Tika를 사용하여 텍스트를 추출하는 예제를 살펴보겠습니다.
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;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
public class TextExtractor {
public static void main(String[] args) {
try {
// 추출할 파일 경로
String filePath = "path/to/file";
// 파일 입력 스트림 생성
File file = new File(filePath);
InputStream inputStream = new FileInputStream(file);
// Tika 파서 생성
AutoDetectParser parser = new AutoDetectParser();
BodyContentHandler handler = new BodyContentHandler();
// 메타데이터 객체 생성
Metadata metadata = new Metadata();
// 텍스트 추출
parser.parse(inputStream, handler, metadata);
// 추출된 텍스트 출력
System.out.println("Extracted Text: " + handler.toString());
// 메타데이터 정보 출력
System.out.println("Metadata: ");
for (String name : metadata.names()) {
System.out.println(name + ": " + metadata.get(name));
}
// 스트림 닫기
inputStream.close();
} catch (IOException | TikaException | SAXException e) {
e.printStackTrace();
}
}
}
위 예제는 지정한 파일에서 텍스트를 추출하는 방법을 보여줍니다. 파일 경로를 path/to/file
로 수정하고 실행하면, 해당 파일에서 추출된 텍스트와 메타데이터가 출력되게 됩니다.
Apache Tika를 사용하면 다양한 파일 형식에서 텍스트를 추출할 수 있으며, 필요에 따라 텍스트 데이터를 처리하고 활용할 수 있습니다.
참고 자료
- Apache Tika 공식 홈페이지: https://tika.apache.org/
- Apache Tika GitHub 저장소: https://github.com/apache/tika