前言
简单说一下我在公司使用POI的一些问题, 然后重新整理了这一篇文章,比如新增SXSSF 的PAI
POI的简介
POI是apache的一个对Microsoft offer格式文档的读和写的功能的工具,也支持其他的格式
* Poor Obfuscation Implementation
三大套API
HSSF 操作excel03及以下版本
XSSF 操作excel07及以上版本
- SXSSF 操作excel07及以上版本(可以避免内存溢出问题,因为会往磁盘缓存文件写数据。)
- 整一个excel是一个工作薄: workbook
- 通过工作薄获得一个表是 : sheet
- 通过表获得一行 : row
- 通过行获得列 就是单元格 : cell
问题一 : 导出数量只支持65536条
如果使用HSSF 和SXSSF导出的数量只支持65536多条,这个在我当时工作的时候还是挺头疼的,不过最近我去官网看了一下,更新的第三套解决方案的API : SXSSF .
SXSSF 它可以实现在导出一定数量时把数据先缓存到电脑磁盘中的.
问题二 : 使用导入模板获取样式
如果模板的单元格是一个空的单元格,没有任何样式, 通过sheet.getRow() 获得行是Null,会抛出NullPointerException空指针异常