【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();

    }

效果

相关推荐
阿文的代码库15 小时前
干货分享|C++运算符重载知识点
java·c++·算法
码不停蹄的玄黓15 小时前
Java 实现阻塞队列
java·开发语言
SunnyDays101115 小时前
Java 实现 PDF 转 PDF/A 和 PDF/A 转 PDF(超详细教程)
java·开发语言·pdf
muddjsv15 小时前
Java语言学习路线全解析:从入门到精通的核心模块与进阶路径
java
未若君雅裁15 小时前
线程池核心参数与执行流程
java·开发语言
东方巴黎~Sunsiny15 小时前
后端已经开始使用AI代替前端开发了
java·人工智能·状态模式
Sam_Deep_Thinking15 小时前
结算分摊的策略模式:不同营销活动的扣点计算方案
java·设计模式·架构·系统架构
兰令水16 小时前
leecodecode【回溯组合】【2026.6.5打卡-java版本】
java·开发语言
8Qi816 小时前
LeetCode 518:零钱兑换 II(Coin Change II)—— 题解 ✅
java·算法·leetcode·动态规划·完全背包
cfm_291416 小时前
SpringBoot整合RocketMQ极速实战
java·spring boot·后端