开源中国

我们不支持 IE 10 及以下版本浏览器

It appears you’re using an unsupported browser

为了获得更好的浏览体验,我们强烈建议您使用较新版本的 Chrome、 Firefox、 Safari 等,或者升级到最新版本的IE浏览器。 如果您使用的是 IE 11 或以上版本,请关闭“兼容性视图”。
ExcelUtil首页、文档和下载 - Excel 便捷读取工具 - 开源中国社区
Float_left Icon_close
全部项目分类
GPL
Java
跨平台
素剑步青尘
分享
收藏
354 人收藏
收录时间:2017-06-07
ExcelUtil 详细介绍

ExcelUtil 借助反射和 POI 对 Excel 读取,省略了以往读取 Excel 的繁琐步骤,调用 ExcelUtil 只需要2步,对,你没有看错,2步足以读取到 Excel 的内容。自动赋值,传入对应Model所在路径,即可自动赋值.自动匹配数据类型String,Int,Long,Date,Double等,精准定位报错信息.

使用场景:

可以想一下我们现在有个Excel导入任务,比如是导入一个班级的学生花名册,比如学生这个实体类是Student.java 一般的导入是需要每行每列对Excel进行遍历,然后给Student的各个属性进行赋值,然后如果碰到Teacher.java需要导入,难道还要在写一遍遍历?代码又臭又长不说,而且代码冗余很多,现在借助ExcelUtil这个公共类,可以实现优雅,容易的读取.兼容03,07版Excel.大家项目中直接引入maven就可以了.

一、导入调用步骤:

1.定义需要读取的表头字段和表头对应的属性字段

String keyValue ="手机名称:phoneName,颜色:color,售价:price";

2.读取数据

List list=ExcelUtil.readXls("C://test.xlsx",ExcelUtil.getMap(keyValue),"com.lkx.model.PhoneModel")

二、导出调用步骤

1.模拟导出到磁盘位置

List<PhoneModel> list = new ArrayList<PhoneModel>();//假装这是一个有数据的集合
String keyValue ="手机名称:phoneName,颜色:color,售价:price"; 
ExcelUtil.exportExcel("d:/testsss.xls",keyValue,list,"com.lkx.model.PhoneModel");

2.在浏览器中直接输出

List<PhoneModel> list = new ArrayList<PhoneModel>();//还是假装这是一个有数据的集合
String keyValue ="手机名称:phoneName,颜色:color,售价:price"; 
ExcelUtil.exportExcelOutputStream(response,keyValue,list,"com.lkx.model.PhoneModel","fileName"); 

其中fileName参数可以省略,省略会以当前时间的年月日时分秒作为文件名称。

这里的response需要调用类传进来,一般是controller(HttpServletResponse response)。

POM引入

		<dependency>
			<groupId>net.oschina.likaixuan</groupId>
			<artifactId>excelutil</artifactId>
			<version>1.5.3</version>
		</dependency>


        

ExcelUtil

选择将代码托管在码云
你还在等什么

可能是中国最大最好的代码托管平台


大家对 ExcelUtil 的评论 (全部 18 条评论)
{{repayCom.userName}}
2119905726
调用代码简洁明了,再也不用写那么多繁琐的代码了
中丸子
不错,省事多了,现在还有maven直接引入了
开源中国首席BOSS
大多数软件用起来复杂,并不真正的了解需求,所谓的作者一味的吹嘘自己的软件实现了很多功能,然而80%都不是我们需要的,最主要的是用起来超级复杂,就自己能用吧,楼主的软件用起来简洁,用20%的代码解决了常用的80%的问题,32个赞!!!
马丁的早晨
数据检验有做吗?
素剑步青尘
@阿信sxq xls 和 xlsx是调用POI的不同的方法的,之所以都在是想让大家下载源码能直接运行,关键是ExcelUtil这个类,其他的不重要
@周更新 这个如果不是有人故意搞的话,这样是没有问题的,除非是有人故意把03的Excel版本后缀改成07的或者07的故意改成03的,但是这样似乎意义不是很大
ExcelUtil 相关博客
顶部