EasyExcel操作Excel读和写

编程入门 行业动态 更新时间:2024-10-11 23:16:16

EasyExcel<a href=https://www.elefans.com/category/jswz/34/1770947.html style=操作Excel读和写"/>

EasyExcel操作Excel读和写

引入依赖

<dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><version>2.1.1</version>
</dependency><!--xls-->
<dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId><version>3.17</version>
</dependency>
<!--xlsx-->
<dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml</artifactId><version>3.17</version>
</dependency>

1.使用EasyExcel进行写操作

(1).创建一个要写入的实体类

@Data
public class Student {// 设置excel表头的名称@ExcelProperty("学生编号")private Integer no;@ExcelProperty("学生姓名")private String name;
}

(2).创建一个操作Excel的实体类

public class TestEasyExcel {public static void main(String[] args) {// 实现excel写的操作// 1.设置写入文件夹地址和excel文件名称String filename = "C:\\write.xlsx";// 2.调用easyExcel里面的方法实现写操作// write方法的两个参数:第一个为文件路径 第二个为实体类classEasyExcel.write(filename, Student.class)// Sheet的名称.sheet("学生列表")// 把数据写入Excel表格中.doWrite(getData());}// 创建方法返回list集合(具体要写入Excel的数据)private static List<Student> getData() {List<Student> list = new ArrayList<>();for (int i = 0; i < 10; i++) {Student data = new Student();data.setSno(i);data.setSname("lucy" + i);list.add(data);}return list;}
}

2.使用EasyExcel进行读操作

(1).创建一个和Excel对应的实体类,标记对应列关系

@Data
public class Student {// 设置excel表头的名称@ExcelProperty(value = "学生编号", index = 0)private Integer no;@ExcelProperty(value = "学生姓名", index = 1)private String name;
}

(2).创建读取Excel监听器

import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.AnalysisEventListener;
import com.alibaba.excel.metadata.CellData;import java.util.Map;public class ExcelListener extends AnalysisEventListener<Student> {/*** 一行一行读取excel内容* @param data 一行一行读取数据* @param analysisContext*/@Overridepublic void invoke(Student data, AnalysisContext analysisContext) {System.out.println("*****" + data);}/*** 读取表头内容* @param headMap* @param context*/@Overridepublic void invokeHead(Map<Integer, CellData> headMap, AnalysisContext context) {System.out.println("表头:" + headMap);}/*** 读取完成之后* @param analysisContext*/@Overridepublic void doAfterAllAnalysed(AnalysisContext analysisContext) { }
}

(3).调用实现最终的读取

import com.alibaba.excel.EasyExcel;public class TestEasyExcel {public static void main(String[] args) {// 实现Excel读操作,这里表示要读取的Excel文件的路径String filename = "C:\\write.xlsx";// read的三个参数:要读取的Excel文件路径 和Excel对应的实体类 监听器EasyExcel.read(filename, Student.class, new ExcelListener()).sheet().doRead();}
}

更多推荐

EasyExcel操作Excel读和写

本文发布于:2024-02-25 19:24:38,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1700052.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:操作   EasyExcel   Excel

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!