excel 不能插入对象_POI操作Excel最强总结

26a2a0eb48664de86f8634059cf3a758.gif

每天叫醒你的不是闹钟,而是姿势

1

POI提供的三种读写的方式

3156bdaf635d108386a2f73566b8116f.png

2

SXSSF

1.      SXSSFWorkbook : 可以操作数据量大的excel文件,只能写出,不能读取,不能添加批注

(1)提供的构造函数

b2ba4409b792246198770660d806e8a5.png

可以将XSSFWorkbook作为参数转成为SXSSFWorkbook。

3

usermodel模式

1.      XSSFWorkbook,  usermodel方式,可读可写,读写数据量大容易都造成oom。

可以添加批注,

(1)提供的构造函数

2f97fff81780385462b7db60439dede8.png

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

baeb26ddb876ed766f5c1728f1c4773a.png

保存错误,无法获取输入流信息,

如果要读取excel文件后append写出,务必使用public XSSFWorkbook(InputStream is)构造函数

 每个批注对象只能插入一次,在其它单元格再次插入就会重新定位。

 (3) 创建多个sheet方式

ea028895fe00f3dc23070b4254b8b5a4.png

4

eventmodel模式

1.      Eventmodel模式 : poi提供事件模式读取数据量大的excel文件,且不会造成oom

采用sax模式导入文档

http://poi.apache.org/components/spreadsheet/how-to.html#xssf_sax_api

2f3b55bdcf6c300007f3b02487c72833.png

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

bcc18028e10beca9ac6773100b84d4a0.png

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

该模式可以很快速读取数据量大的excel文件,可读不可写

8716b34672f9e6768bc0f3b8dae558ca.gif

点击蓝字关注我们

表情包
插入表情
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符
相关推荐
©️2020 CSDN 皮肤主题: 游动-白 设计师:白松林 返回首页