我正在使用POI来阅读Word文档并提取表格。它适用于较小的文档,但使用较大的文档提供Out of Heap例外。
这是当前的代码:
public List<XWPFTable> extractTables() throws FileNotFoundException, IOException {
InputStream fis = new FileInputStream(source);
XWPFDocument doc = new XWPFDocument(fis);
return doc.getTables();
}
它在getTables()调用上窒息。我已经看过excel的类似帖子,他们有一个只读访问器,但无法找到类似的东西。我已经为应用程序提供了更多的堆空间,它有时会工作。我想这取决于可用的RAM量。我试图阻止它发生。用户迟早会尝试一份大文件。
关于如何防止这种情况的任何想法?