阿里的EasyExcel也是基于POI的,为啥不直接使用POI呢,因为现在客户Excel的数据量都比较大,一个Excel文件轻松超过10万条,直接使用POI很容易内存溢出,而EasyExcel通过异步加载的方式,一次取1000条(有限的条数),异步读取,所以不会内存溢出,而且速度足够快。

但是EasyExcel得Bug也很多,其一:

(1)几个月前的版本不能正确读取科学记数法的数据,比如商品条形码,类似这种:6917751460226,是不能正确读出来的;升级到最新版本,可以读出来了,但是几个月之前的版本还读不出来;

(2)几个月前的版本,日期格式不能正确读出来,例如某列日期:2019/7/31,读成一个乱七八糟的数字,最新版本可以读出来了,但是格式自动加上了 00:00:00,即客户数据本来是年月日,自动转换成了  年月日时分分秒;

(3)最新版本,整型自动加了小数点。客户有的数据,例如商品编码,就是一个整型的字符型数据,EasyExcel读取的时候,自动转为double类型了,所以自动加了小数点,我觉得EasyExcel的数据类型应该再加上Integer和yyyy-MM-dd 类型的Date。

所以用EasyExcel读取Excel文件数据后,还需要再把数据清洗一下。

 

GitHub 加速计划 / ea / easyexcel
27
5
下载
快速、简洁、解决大文件内存溢出的java处理Excel工具
最近提交(Master分支:4 个月前 )
c42183df Bugfix 1 年前
efa7dff6 * 重新加回 `commons-io` 1 年前
Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐