当前位置: 首页 > 知识库问答 >
问题:

从大文件中提取文本

彭开畅
2023-03-14

我需要从大文件中提取文本(最大限制50MB)文件可能是doc、ppt、xls、txt或pdf格式。到目前为止,我使用了ApachePOI'http://poi.apache.org/'

用于Microsoft Office文档和PDFBox从PDF中提取文本。然而,随着文件变大,提取过程变得缓慢,特别是以下文件。到目前为止我取得的成果:

1. PPTX-45MB-3分钟apx

2.PDF-62MB-2分钟apx

3. Docx-32MB-15秒apx

4.XLS-17MB-10秒apx

5.XLSX-7MB-20秒apx

我需要这个过程快速。我可以使用哪些API来实现这一点,以及哪些最佳实践可以帮助我提高应用程序的性能?

共有2个答案

缑桐
2023-03-14

试试ApacheTika。Tika用于使用现有的解析器库从各种文档中检测和提取元数据和结构化文本内容。

洪弘壮
2023-03-14

pptx、docx和xlsl是包含XML文件的拉链(content.XML和sharedStrings.XML等)。如果您不需要上下文中的文本,因此不需要DOM(整个文档的模型),那么您可以自己处理这些XML,并按顺序解析所有XML。

对于PDF,您可能会尝试itext,顺序读取pdf。事实上,有几个pdf库的示例文本提取器。

从XML中提取文本意味着按顺序读取XML文本,并且只关注之间的文本部分

最难的部分是xlsx,它共享单元格值:一个间接引用。我宁愿使用JDBC查询,但这也需要时间。有几个选项:ODBC-JDBC桥,还有合适的驱动程序。

编程确实需要时间,并且应该在小样本文档上完成。

 类似资料:
  • 问题内容: 假设您有一个像这样的文本文件:http : //www.gutenberg.org/files/17921/17921-8.txt 有没有人有一个好的算法或开放源代码从文本文件中提取单词?如何获得所有单词,同时避免使用特殊字符,并保留诸如“ it’s”之类的内容… 我在用Java工作。谢谢 问题答案: 这听起来像是正则表达式的正确工作。如果您不知道如何开始,以下是一些Java代码,可以

  • 我正在使用它从文本文件中提取结果: 文件中存储的数字存储为 他们被拉入名单 是不是我可以用matplotlib将这个列表转换成浮点来绘制?

  • 在我的应用程序中,我下载了Android系统的扩展文件- 我尝试将APK扩展Zip库用作: 但是expansionFile总是空的。这个obb文件是用Jobb创建的,用于文件夹obb/file。拉链

  • 问题内容: 我正在尝试使用提取此 PDF文件中包含的文本。 我正在使用PyPDF2模块,并具有以下脚本: 运行代码时,得到以下输出,该输出与PDF文档中包含的输出不同: 如何提取PDF文档中的文本? 问题答案: 要从PDF提取文本,请使用以下代码

  • 如何从CSV文件中提取列? 我对Java有点陌生。你如何从csv文件中提取特定列。例如,如果我有这个数据: 如何提取第一列和第三列?我能够读取整个CSV文件,但我想从中提取特定的列。

  • 我需要解析一些BSOD崩溃文件,但我有一个可怕的混乱与符号。我有成吨的pdb文件,在文件夹下,所以文件夹名是pdb文件GUID,但我相信文件是混乱的。 我所需要做的就是找到从pdb文件中提取GUID的方法。我设法找到了这个工具。但不幸的是,我有错误,不能让它工作。