首页 文章

apache poi从非常大的xls复制到新的工作簿表

提问于
浏览
0

我有非常大的xls文件,其中包含两个工作表 . 我想将这两个表合并为一个并复制到新工作簿 . 但是当我尝试访问这个大型xls时,我的内存异常如下:

FileInputStream fis = new FileInputStream(new File("input.xls"));
HSSFWorkbook workbook = new HSSFWorkbook(fis);

我尝试使用事件api for xls:http://poi.apache.org/spreadsheet/how-to.html#event_api但是使用它我们只能读取单元格值 . 但在这里我需要复制到新的Excel工作表 .

1 回答

  • 2

    Apache POI提供了一个低内存占用SXSSF API来将数据写入xlsx . 它不会立即将所有内容加载到内存中,因此它是处理非常大的excel文件时的解决方案 . 你可能想考虑这个 .

相关问题