1.1.首先需要导入相关的依赖
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
<version>2.1.1</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>${poi.version}</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>${poi.version}</version>
</dependency>
1.2.进行写操作,写到一个excel文件中,给文件去一个名字也就是写到那个地方
String fileName="D:\\write.xlsx";
调用相关方法进行写入到excel中,这里实现要定义一个集合,把集合中的内容写到excel中,方法的第一个参数是定义的名字,第二个参数代表的是实体类。
EasyExcel.write(fileName,Data.class).sheet("学生列表").doWrite(list);
2.1进行对excel都操作,创建一个实体类
@Data
public class Data {
@ExcelProperty(value = "学生编号",index = 0)
private Integer sno;
@ExcelProperty(value = "学生姓名",index = 1)
private String sname;
}
2.2进行读取,先创建一个监听器。
//创建一个监听器进行读操作
public class ExcelListener extends AnalysisEventListener<Data> {
//进行一行一行的读取,第一行直接进行省略不在读取
@Override
public void invoke(Data data, AnalysisContext analysisContext) {
System.out.println(data);
}
//读取表头内容
@Override
public void invokeHeadMap(Map<Integer, String> headMap, AnalysisContext context) {
System.out.println("表头:"+headMap);
}
//读取完之后要进行的操作
@Override
public void doAfterAllAnalysed(AnalysisContext analysisContext) {
}
}
2.2.3调用创建的方法进行读取
public static void main(String[] args) {
//实现excel的读操作
//读取的地址
String fileName="D:\\write.xlsx";
EasyExcel.read(fileName,Data.class,new ExcelListener()).sheet().doRead();
}