zl程序教程

您现在的位置是:首页 >  Java

当前栏目

Java 操作 Excel 的两种方式:POI、EasyExcel

2023-02-18 15:29:20 时间

1. 了解 POI 和 EasyExcel

Java 中,常见的用来操作 Excel 的方式有 2 种:POI、EasyExcel。主要用于:对 Excel 进行导入、导出。


POI:Apache。一种原生操作 Excel(复杂)

HSSF : 读写 Microsoft Excel XLS 格式文档

XSSF : 读写 Microsoft Excel OOXML XLSX 格式文档

SXSSF : 读写 Microsoft Excel OOXML XLSX 格式文档(优化)

EasyExcel:更像是一种框架操作 Excel(简单)

它们的区别:


POI:把要写入的数据全加载到内存中,然后一次性地写数据。容易 OOM

EasyExcel:一行一行地写

2. POI

使用 POI 操作 Excel 时,API 中有三个不同的对象:HSSF 、XSSF、SXSSF。将它们进行比较:


HSSF:文档后缀 .xls(03版本的 excel)

缺点:只能操作小于或等于 65536 行,否则,会抛出异常

优点:过程中写入缓存,不操作磁盘,最后,一次性写入磁盘,速度快

XSSF:文档后缀 .xlsx(07版本的 excel)

缺点:写数据时非常慢(边读边写),非常耗内存,也会发生内存溢出。如:100万条

优点:可以写较大的数据量。如:20万条

SXSSF:文档后缀 .xlsx(07版本的 excel)

缺点:需要清除临时文件(((SXSSFWorkbook) workBook).dispose())

优点:可以写入更大的数据量。如:100万条。写数据速度快,占用更少的内存


详细操作,请查看文档:EasyExcel