欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

简单使用easyExcel实现对excel读和写操作

程序员文章站 2022-07-13 14:33:43
...

1.引入依赖

easyexcel底层封装了poi所以必须引入poi而且版本需要进行对应如下:

      <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi</artifactId>
            <version>3.1.7</version>
        </dependency>

        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>3.1.7</version>
        </dependency>
      <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>easyexcel</artifactId>
            <version>2.1.1</version>
        </dependency>

利用easyExcel实现写操作

1.创建实体类与excel数据对应

package com.wyr.test.easyexcel;

import com.alibaba.excel.annotation.ExcelProperty;
import lombok.Data;

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

2.使用easyExcel中的方法实现写操作  该操作会自动关闭文件流

public void testWrite() {
        //实现excel写操作
        //1.设置写入文件的地址和文件名
        String fileName = "F:/write.xlsx";
        //2.调用easyExcel里面的方法实现写操作
        //write方法两个参数:第一个参数文件路径名称,第二个参数实体类class
        EasyExcel.write(fileName, Excel.class).sheet("学生列表").doWrite(getData());
    }

利用easyExcel实现读操作

1.创建实体类与excel对应

package com.wyr.test.easyexcel;

import com.alibaba.excel.annotation.ExcelProperty;
import lombok.Data;

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

2.创建监听进行excel文件读取

//创建监听进行excel文件读取
public class ExcelListener extends AnalysisEventListener<Excel> {
    //一行一行读取数据
    @Override
    public void invoke(Excel excel, AnalysisContext analysisContext) {
        System.out.println("++++读取出来的数据" + excel);

    }

    //读取完成之后 的操作
    @Override
    public void doAfterAllAnalysed(AnalysisContext analysisContext) {

    }

    //读取表头内容
    @Override
    public void invokeHeadMap(Map<Integer, String> headMap, AnalysisContext context) {
        System.out.println(headMap);
    }

}

3.读操作

    @Test
    //实现excel读操作
    public void readExcel() {
        String fileName = "F:/write.xlsx";
        EasyExcel.read(fileName, Excel.class, new ExcelListener()).sheet().doRead();
    }

 

相关标签: excel java