专业的JAVA编程教程与资源

网站首页 > java教程 正文

利用阿里EasyExcel实现Excel读写(阿里云表格识别)

temp10 2024-10-08 18:18:20 java教程 13 ℃ 0 评论

利用EasyExcel可以简单的实现Excel的读写操作,具体的代码如下:

第一步:导入依赖

利用阿里EasyExcel实现Excel读写(阿里云表格识别)

<dependencies>
<!--EasyEx框架 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
<version>3.3.3</version>
</dependency>
</dependencies>

第二步:定义数据类

/**
* 数据类
*/
@Getter
@Setter
@EqualsAndHashCode
public class MyData {
@ExcelProperty("姓名")
private String name;
@ExcelProperty("生日")
private Date birth;
@ExcelProperty("年龄")
private Integer age;
}

第三步:定义读取监听器

/**
* 读取监听器
*/
@Slf4j
public class MyDataListener implements ReadListener<MyData> {
public MyDataListener() {
}
/**
* 逐条解析Excel数据
* @param data
* @param context
*/
@Override
public void invoke(MyData data, AnalysisContext context) {
log.info("解析到一条数据:{}", JSON.toJSONString(data));
}
/**
* 解析完成之后调用这个方法
* @param context
*/
@Override
public void doAfterAllAnalysed(AnalysisContext context) {
log.info("所有数据解析完成!");
}
}

第四步:定义测试类

/**
* 测试类
*/
@Slf4j
public class MyExcelDemo {
String fileName="d:/测试文件.xlsx";
/**
* 写Excel文件
*/
@Test
public void testWrite() {
/**
* 1、设置文件路径
* 2、设置数据类
* 3、sheet重命名
* 4、写数据
*/
EasyExcel.write(fileName, MyData.class).sheet("模板").doWrite(mockData());
log.info("写入路径{}",fileName);
}
/**
* 读Excel文件
*/
@Test
public void testRead() {
/**
* 1、设置文件路径
* 2、设置数据类
* 3、设置数据监听器
*/
EasyExcel.read(fileName, MyData.class, new MyDataListener()).sheet().doRead();
}
private List<MyData> mockData() {
List<MyData> list = ListUtils.newArrayList();
for (int i = 0; i < 10; i++) {
MyData data = new MyData();
data.setName("姓名" + i);
data.setBirth(new Date());
data.setAge(30);
list.add(data);
}
return list;
}
}

运行写Excel效果:

运行读Excel效果:

可以看到通过EasyExcel框架很容易的实现了Excel的读和写,非常方便。

--------------------------------------

关注我,跟随老码农探索更多Java秘密

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表