博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
excel4j
阅读量:4354 次
发布时间:2019-06-07

本文共 1723 字,大约阅读时间需要 5 分钟。

excel4j是基于POI封装的操作excel的工具,可以方便的对excel进行读写。

1、读取

可以直接读取结果到List<List<String>>

  List<List<String>> lists = ExcelUtils.getInstance().readExcel2List(path,0,0,0); 四个参数代表excel路径、从第几行开始读取(0是第一行)、一共读取几行(默认所有,0是读取一行)、sheet页index(默认0)

可以通过注解读取每一列都是一个对象

  List<TestCase> testcase = ExcelUtils.getInstance().readExcel2Objects(path,TestCase.class,0,0); 四个参数代表excel路径、待绑定的类、EXCEL表头行(默认是0)、sheet页index(默认0)

#TestCase.java  @ExcelField(title = "是否开启", readConverter=IsRunConvert.class) private boolean run;

如果excel列名是“是否开启”在对象中的名字就是run,IsRunConvert实现了ReadConvertible接口重写execRead方法,如果读取excel内容的过程中,读取的内容是“是”在对象中展示true

package testexcel4j;import com.github.crab2died.converter.ReadConvertible;public class IsRunConvert implements ReadConvertible {    @Override    public Object execRead(String object) {        if("是".equals(object)) {            return true;        }        return false;    }}

2、写入(导出)  

   ExcelUtils.getInstance().exportObjects2Excel(cases, TestCase.class, true, "sheet0",true,"123456.xlsx"); 参数含义 导出内容、映射对象Class、是否导出表头、sheet页名称、是否是2007以上版本(默认是)、导出的名称及路径

@ExcelField(title = "开关", writeConverter=WriteRunConvert.class)    private boolean run;

和读刚好相反如果传入的列表对象有run字段,写到excel中展示标题是开关。WriteRunConvert实现了WriteConvertible重写了execWrite方法,把写入的内容做一个转换

package testexcel4j;import com.github.crab2died.converter.WriteConvertible;public class WriteRunConvert implements WriteConvertible{    @Override    public Object execWrite(Object object) {        if(object!=null) {            boolean result=Boolean.valueOf(object.toString());            if(result) {                return "开启";            }else {                return "未开启";            }        }        return "未开启";    }}

 

 

 

 

 

 

 

 

 

转载于:https://www.cnblogs.com/ysmdbk/p/11187941.html

你可能感兴趣的文章
重定向和管道
查看>>
实验五
查看>>
STL学习笔记(第二章 C++及其标准程序库简介)
查看>>
Operator_countByValue
查看>>
Java 日期往后推迟n天
查看>>
Web应用漏洞评估工具Paros
查看>>
Git 和 Github 使用指南
查看>>
20180925-4 单元测试
查看>>
mysql的数据存储
查看>>
[转载] Activiti Tenant Id 字段释疑
查看>>
[Java 8] (8) Lambda表达式对递归的优化(上) - 使用尾递归 .
查看>>
SQL Server-聚焦移除Bookmark Lookup、RID Lookup、Key Lookup提高SQL查询性能
查看>>
最小权限的挑战
查看>>
jquery 视觉特效(水平滚动图片)
查看>>
SVG笔记
查看>>
linux下使用dd命令写入镜像文件到u盘
查看>>
001---进程
查看>>
视频人脸检测——OpenCV版(三)
查看>>
php获取来访者在搜索引擎搜索某个关键词,进入网站
查看>>
物联网架构成长之路(8)-EMQ-Hook了解、连接Kafka发送消息
查看>>