如何使用tika 1.6获取文本内容文件?

时间:2015-01-15 17:10:42

标签: java-ee apache-tika

您好我尝试从此列表中的任何文件获取文本内容pdf,txt,doc,docx和odt tika的实施以前工作正常,但现在已经坏了, 代码是:

```

public void uploadFile(FileUploadEvent event) throws Exception {
 UploadedFile file = event.getUploadedFile();
 byte[] data = file.getData();
 Tika tika = new Tika();
 string = tika.parseToString(new ByteArrayInputStream(data));
 ...
}

```

有什么想法吗? ,执行不好?

1 个答案:

答案 0 :(得分:1)

您需要添加tika-parsers。

例如,使用maven将此依赖项添加到您的pom.xml:

<dependency>
        <groupId>org.apache.tika</groupId>
        <artifactId>tika-parsers</artifactId>
        <version>1.7</version>
</dependency>

您可以使用Auto-Detect Parser:

BodyContentHandler handler = new BodyContentHandler();
AutoDetectParser parser = new AutoDetectParser();
Metadata metadata = new Metadata();
try {
    parser.parse(is, handler, metadata);
    text = handler.toString();
} catch(TikaException te) {
    System.out.println(te.toString());
} finally {
    is.close();
}