
每天叫醒你的不是闹钟,而是姿势
1
POI提供的三种读写的方式

2
SXSSF
1. SXSSFWorkbook : 可以操作数据量大的excel文件,只能写出,不能读取,不能添加批注
(1)提供的构造函数

可以将XSSFWorkbook作为参数转成为SXSSFWorkbook。
3
usermodel模式
1. XSSFWorkbook, usermodel方式,可读可写,读写数据量大容易都造成oom。
可以添加批注,
(1)提供的构造函数

使用public XSSFWorkboot(String path)构造需要注意,该构造函数读取excel文件之后无法将文件重新写出到本地,会报异常

保存错误,无法获取输入流信息,
如果要读取excel文件后append写出,务必使用public XSSFWorkbook(InputStream is)构造函数
每个批注对象只能插入一次,在其它单元格再次插入就会重新定位。
(3) 创建多个sheet方式

4
eventmodel模式
1. Eventmodel模式 : poi提供事件模式读取数据量大的excel文件,且不会造成oom
采用sax模式导入文档
http://poi.apache.org/components/spreadsheet/how-to.html#xssf_sax_api

读取的OPCPackage对象可以作为参数转换为XSSFWorkbook

这种方式虽然可以读取大数据量的excel文件,但是当达到一定数量,同样造成oom异常.
该模式可以很快速读取数据量大的excel文件,可读不可写

点击蓝字关注我们
本文介绍使用Apache POI库处理大数据量Excel文件的三种模式:SXSSF、Usermodel及Eventmodel,对比各模式优缺点,如OOM风险规避、批注支持、读写能力等,适合大数据处理场景。
5万+

被折叠的 条评论
为什么被折叠?



