0

我需要从电子邮件附件中的几种文档类型(主要是 .doc .docx .pdf 和 .txt )中提取文本。该应用程序正在 Google App Engine 上运行。Apache Tika 完全符合我的需要,但是当它尝试在 GAE 上创建临时文件时,我遇到了 SecurityException。我知道 GAE 不支持这一点。

除了临时文件,有没有办法强制 Tika 使用 memcache 或其他一些存储?是否有任何其他文档解析器可以在没有临时文件的情况下处理这个问题?

4

1 回答 1

3

如果您直接传入文件类型或从文件创建 TikaInputStream,则某些 parse() 方法将创建临时文件。您也可以通过在 TikaInputStream 上调用 getFile() 或 getFileChannel() 来触发它。因此,您可以通过自己创建 TikaInputStream 并避免在过程中使用 File 对象来控制它(即首先将文件加载到内存中或以某种方式流式传输)。但是,如果解析器实现为您调用 getFile() 或 getFileChannel(),那么您就不走运了,没有自己实现解析器。

于 2013-09-20T12:09:15.840 回答