【EasyExcel】—— 实现excel动态表头设置、多个sheet

引入jar

java 复制代码
 <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>easyexcel</artifactId>
            <version>3.1.0</version>
        </dependency>

代码

java 复制代码
    public static void main(String[] args) {
        //选择存储地址
        String fileName = "/Users/qweasdzxc/Downloads/text.xlsx";

        // 创建ExcelWriterBuilder对象
        ExcelWriter excelWriter = EasyExcelFactory.write(fileName).build();

        //设置动态表头
        List<List<String>> head1 =new ArrayList<>();
        head1.add(Collections.singletonList("姓名"));
        head1.add(Collections.singletonList("年龄"));
        head1.add(Collections.singletonList("性别"));

        //填充数据
        List<List<Object>> data1 = new ArrayList<>();
        data1.add(Arrays.asList("张三", 20, "男"));
        data1.add(Arrays.asList("李四", 25, "女"));

        //放入sheet1中
        //automaticMergeHead 控制是否合并相同标题的单元格 false==不合并
        WriteSheet writeSheet = EasyExcelFactory.writerSheet(0, "学生信息1").head(head1).automaticMergeHead(false).build();
        excelWriter.write(data1, writeSheet);


        List<List<String>> head2 =new ArrayList<>();
        head2.add(Collections.singletonList("学科"));
        head2.add(Collections.singletonList("分数"));

        List<List<Object>> data2 = new ArrayList<>();
        data2.add(Arrays.asList("数学", 90));
        data2.add(Arrays.asList("英语", 85));

        //放入sheet2中
        writeSheet = EasyExcelFactory.writerSheet(1, "学生信息2").head(head2).build();
        excelWriter.write(data2, writeSheet);
        //关流
        excelWriter.finish();

    }

效果

相关推荐
派大鑫wink5 分钟前
【Day12】String 类详解:不可变性、常用方法与字符串拼接优化
java·开发语言
JIngJaneIL8 分钟前
基于springboot + vue健康管理系统(源码+数据库+文档)
java·开发语言·数据库·vue.js·spring boot·后端
秋饼9 分钟前
【三大锁王争霸赛:Java锁、数据库锁、分布式锁谁是卷王?】
java·数据库·分布式
电商API&Tina12 分钟前
【电商API接口】关于电商数据采集相关行业
java·python·oracle·django·sqlite·json·php
刘一说16 分钟前
Spring Boot中IoC(控制反转)深度解析:从实现机制到项目实战
java·spring boot·后端
悟空码字16 分钟前
SpringBoot参数配置:一场“我说了算”的奇幻之旅
java·spring boot·后端
我居然是兔子19 分钟前
Java虚拟机(JVM)内存模型与垃圾回收全解析
java·开发语言·jvm
关于不上作者榜就原神启动那件事21 分钟前
Spring Data Redis 中的 opsFor 方法详解
java·redis·spring
其美杰布-富贵-李22 分钟前
Java (Spring Boot) 反射完整学习笔记
java·spring boot·学习
小许好楠33 分钟前
java开发工程师-学习方式
java·开发语言·学习