Alibaba EasyExcel生成excel Demo

0.jar包依赖
这里注意如果项目引入的有poi相关jar包的话可能会出现jar包版本冲突的问题

      <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>easyexcel</artifactId>
            <version>2.2.6</version>
        </dependency>

1.DemoData文件:

/**
 * @author 李光辉
 * @version 1.0
 * @date 2022/12/27 16:01
 */
@Data
public class DemoData {
    @ExcelProperty("金额")
    private String a;
    @ExcelProperty("数量")
    private Long b;
    @ExcelProperty("名字")
    private String c;
}

2.window环境在本地生成test.xlsx文件demo。
windows环境往C盘创建文件可能会有权限问题,关闭IDEA重新以管理员身份打开可以解决此问题。

/**
 * @author 李光辉
 * @version 1.0
 * @date 2022/12/29 15:51
 */
public class ExcelWriteDemo {

    /**
     * @param fileName 文件名字
     * @param head     数据类的类型
     * @param list     需要填充进excel的数据集合
     * @throws IOException
     */
    public static void createExcelFile(String fileName, Class head, List<DemoData> list) {
        File file = new File(fileName);
        try {
            file.createNewFile();
        } catch (IOException e) {
            System.out.println("创建文件异常");
            return;
        }
        ExcelWriter excelWriter = EasyExcel.write(fileName, head).file(file).build();
        WriteSheet writeSheet = EasyExcel.writerSheet().build();
        //需要排除的列,将DemoData类的属性放进去,此列就会在生成excel的时候被排除掉
        List excludeColumnList = new ArrayList<>();
        excludeColumnList.add("b");
        writeSheet.setExcludeColumnFiledNames(excludeColumnList);
        excelWriter.write(list, writeSheet);
        excelWriter.finish();
    }

    public static void main(String[] args) {
        List<DemoData> list = new ArrayList<>();
        DemoData demoData = new DemoData();
        demoData.setA("a");
        demoData.setB(123L);
        demoData.setC("c");
        list.add(demoData);
        createExcelFile("C:/test.xlsx", DemoData.class, list);
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值