3

我需要使用 ColdFusion 逐页解析大型 Excel 电子表格(大约 20 张)。使用[java.lang.OutOfMemoryError: GC 开销限制超出]处理大量数据时,cfspreadsheet标记失败。Apache POI 用户 API 直接行为相同:

<cfscript>
  pkg = CreateObject("java", "org.apache.poi.openxml4j.opc.OPCPackage").open(JavaCast("string", fileName));
  // error on next line
  wb = CreateObject("java", "org.apache.poi.xssf.usermodel.XSSFWorkbook").Init(pkg);
</cfscript>

我尝试使用 Apache POI事件 API而不是用户 API,但遇到了 java 继承问题。有没有人用过XSSF and SAX (Event API)ColdFusion 中的大型电子表格处理?

4

1 回答 1

2

毕竟我成功地使用了 CF + Apache POI Event API + Mark Mandel'sJavaLoader.cfc,谢谢@Leigh,@barnyr 的所有帮助。我使用 java 实现了 excel 解析器XSSF and SAX Event API,现在它可以工作并且工作得非常快。这并不容易,因为要解析的模板并不简单,并且正如评论中所指出的那样,增加堆大小可能会更便宜。

于 2014-07-29T14:49:32.930 回答