我正在使用 Apache Tika 对各种文档(ODS、MS office、pdf)进行简单处理。我必须至少得到:
word count, author, title, timestamps, language etc.
这并不容易。我的策略是对 6 种类型的文档使用模板方法模式,我首先找到文档的类型,并在此基础上单独处理它。
我知道 apache tika 应该消除对这个的需要,但是文档格式有很大不同,对吧?
例如
InputStream input = this.getClass().getClassLoader().getResourceAsStream(doc);
ContentHandler textHandler = new BodyContentHandler();
Metadata metadata = new Metadata();
Parser parser = new OfficeParser();
parser.parse(input, textHandler, metadata, new ParseContext());
input.close();
for(String s : metadata.names()) {
System.out.println("Metadata name : " + s);
}
我尝试对 ODS、MS office、pdf 文档执行此操作,但元数据差异很大。MSOffice 界面列出了 MS 文档的元数据键和一些Dublic Core元数据列表。但是应该如何实现这样的应用程序呢?
可以请有经验的人分享他的经验吗?谢谢