EasyExcel-好用的Excel处理工具(java)
前言
提示:这里可以添加本文要记录的大概内容:
之前的实习答辩中我对自己的要求是增加技术沉淀,现在就来记录下EasyExcel的使用心得
提示:以下是本篇文章正文内容,下面案例可供参考
一、标准使用
pom+实体类+监听器
pom文件关于easyexcel的依赖引用
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
<version>3.1.1</version>
</dependency>
实体类
实体类对应excel表格列名,可以把一行数据读成一个实体类
@Data
@AllArgsConstructor
@NoArgsConstructor
public class ExcelResource {
@ExcelProperty("time")
private Double time;
@ExcelProperty("processed")
private Integer processed;
@ExcelProperty("E_BATDISCONN")
private Integer E_BATDISCONN;
}
监听器重写invoke方法能操作读取到的对象。
try {
InputStream inputStream = file.getInputStream();
EasyExcel.read(inputStream, ExcelResource.class, new PageReadListener<Map<String,String>>(dataList -> {
for (ExcelResource line : dataList) {
log.info("读取到一条数据{}", JSON.toJSONString(line));
send(line);
}
})).sheet().doRead();
} catch (Exception e) {
e.printStackTrace();
}
二、转为Map使用
try {
InputStream inputStream = file.getInputStream();
EasyExcel.read(inputStream, null, new PageReadListener<Map<String,String>>(dataList -> {
for (Map<String, String> line : dataList) {
log.info("读取到一条数据{}", JSON.toJSONString(line));
send(line);
}
})).sheet().doRead();
} catch (Exception e) {
e.printStackTrace();
}