easyExcel生成动态表头

这篇具有很好参考价值的文章主要介绍了easyExcel生成动态表头。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

效果图

如图,问题是可以根据数据自动生成的,只是举了个栗子,可以把表头headers和内容contents根据数据来生成
easyexcel动态表头,Excel,java,开发语言文章来源地址https://www.toymoban.com/news/detail-629423.html

依赖

        <!--HuTool工具类-->
        <dependency>
            <groupId>cn.hutool</groupId>
            <artifactId>hutool-all</artifactId>
            <version>5.7.13</version>
        </dependency>
        <!--EasyExcel-->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>easyexcel</artifactId>
            <version>2.2.4</version>
        </dependency>

代码


import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.ExcelWriter;
import com.alibaba.excel.write.metadata.WriteSheet;
import com.alibaba.excel.write.metadata.WriteTable;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.util.ArrayList;
import java.util.List;

/**
 * @author: connie1451
 * @copyright:
 * @date: 2022/11/25 16:15
 * */
class Test2 {

    public static void main(String[] args) {
        simpleWrite();
    }

    public static void simpleWrite() {
        //Excel文件输的出位置
        String outPath = "D:/excel/test2.xlsx";
        try {
            //创建ExcelWriter写入对象
            ExcelWriter excelWriter = EasyExcel.write(new FileOutputStream(outPath)).build();

            //创建Sheet对象
            WriteSheet sheet = new WriteSheet();
            //设置第N个Sheet
            sheet.setSheetNo(1);
            //设置Sheet名称
            sheet.setSheetName("第一个Sheet");

            //创建表格对象
            WriteTable table = new WriteTable();
            //设置第N个表格
            table.setTableNo(1);


            //创建表头集合
            List<List<String>> headList = new ArrayList<List<String>>();

            //第N列的表头
            List<String> headTitle1 = new ArrayList<>();
            List<String> headTitle2 = new ArrayList<>();
            List<String> headTitle3 = new ArrayList<>();
            List<String> headTitle4 = new ArrayList<>();
            List<String> headTitle5 = new ArrayList<>();
            List<String> headTitle6 = new ArrayList<>();
            List<String> headTitle7 = new ArrayList<>();
            headTitle1.add("问卷名称");
            //Dau
            headTitle2.add("问题一");
            headTitle2.add("选项1");
            //第三列
            headTitle3.add("问题一");
            headTitle3.add("选项2");

            //第四列
            headTitle4.add("问题一");
            headTitle4.add("选项3");

            //第五列
            headTitle5.add("问题二");
            headTitle5.add("选项1");

            //第六列
            headTitle6.add("问题二");
            headTitle6.add("选项2");

            //第七列
            headTitle7.add("问题二");
            headTitle7.add("选项3");


            headList.add(headTitle1);
            headList.add(headTitle2);
            headList.add(headTitle3);
            headList.add(headTitle4);
            headList.add(headTitle5);
            headList.add(headTitle6);
            headList.add(headTitle7);

            table.setHead(headList);
            List<List<Object>> contents = new ArrayList<>();

            for (int i = 0; i <= 5; i++) {
                List<Object> content = new ArrayList<>();
                for (int j = 0; j < 7; j++) {
                    content.add( + i + "行第" + j + "例");
                }
                contents.add(content);
            }
            excelWriter.write(contents, sheet, table);

            // 记得 释放资源
            excelWriter.finish();
            System.out.println("ok");
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }

    }
}

到了这里,关于easyExcel生成动态表头的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Java 导出Excel表格生成下拉框-EasyExcel

     

    2024年02月11日
    浏览(50)
  • EasyExcel知识【Java程序进行读写生成Excel操作】

    💂 个人主页:  爱吃豆的土豆 🌈欢迎加入社区,福利多多哦!土豆社区 🤟数据库专栏更新完毕: 数据库知识 🤟JDBC专栏更新完毕: JDBC知识 🤟Mybatis专栏更新完毕: Mybatis知识 💬 如果文章对你有帮助、 欢迎关注、点赞、收藏(一键三连)和订阅专栏哦 目录 1,Easy Excel入门

    2023年04月08日
    浏览(46)
  • 【EasyExcel】导出excel冻结表头和冻结指定列并支持筛选器

    需求背景:         导出excel的同时冻结表头和前两列基础信息,方便导出后用户查看信息。 一、技术选型:         easyExcel的自定义写策略处理:SheetWriteHandler 二、方案设计:(基于实现 SheetWriteHandler 接口)         1、重写afterSheetCreate(WriteWorkbookHolder writeWorkbookHolder,

    2024年01月24日
    浏览(44)
  • JAVA(EasyExcel)通过远程调用模板 导出数据 复杂表头

    最近接手一个需求,单组数据的显示,也有多组数据的显示,查了好多文章,都不是很明白.但是这篇文章和我的需求差不多非常相似(链接放在文末),根据这篇文章然后将自己的实现过程记录了下来,以防之后再用到. 这是我需要导出的excel格式 开头是单条数据的展示 之后是多条数据

    2024年02月03日
    浏览(48)
  • 30 使用easyExcel依赖生成Excel

            在类上加注解,@ExcelProperty,注解中value属性是列名,index属性是第几列。         首先,需要创建一个泛型为Student的集合,存放多个Student对象,一个对象相当于excel表格的其中一行。然后,调用EasyExcel的write方法,需要填写excel生成的路径(需要写到生成的excel文件

    2024年02月14日
    浏览(34)
  • EasyExcel读模板生成excel文件&注解Bean生成文件

    EasyExcel依赖 apache poi依赖         EasyExcel同时依赖Apache POI库,同时还需要注意下两个库的版本对应关系。EasyExcel可能升级对poi的依赖,导致功能不兼容。 EasyExcel注解部分参考:EasyExcel注解大全_起一个让人印象深刻的名字的博客-CSDN博客 2.3、生成结果展示 注意! 占位符的

    2024年02月10日
    浏览(30)
  • java处理Excel表格(EasyExcel)

    1.EasyExcel特点 Java领域解析、生成Excel比较有名的框架有Apache poi、jxl等。但他们都存在一个严重的问题就是非常的耗内存。如果你的系统并发量不大的话可能还行,但是一旦并发上来后一定会OOM或者JVM频繁的full gc。 EasyExcel是阿里巴巴开源的一个excel处理框架,以使用简单、节

    2024年02月15日
    浏览(39)
  • Java 使用 easyexcel 读取 excel 文件

    easyexcel 官网:EasyExcel官方文档 - 基于Java的Excel处理工具 | Easy Excel 1. 引入依赖并给出示例 excel     2. 两种读取的方式         (1)确定表头:建立对象,和表头形成映射。(这里以此为例)         (2)不确定表头:每一行映射为 MapString, Object。 3. 先创建 excel 中表头对应

    2024年02月12日
    浏览(54)
  • easyexcel 实现表头批注

    场景;在业务逻辑中,导出的时候需要给客户提供下载的模版,上传的文件有些字段值需要验证,如果不按照验证的规则,后端解析的时候就会失败,所以在导出模版需要给客户一个提示,一种方法是下载的模版中加入示例数据,另外一种就是在表头添加上备注。 以下是表头

    2024年02月13日
    浏览(32)
  • EasyExcel复杂表头数据导入

    参考文章:EasyExcel动态复杂表头导出方法

    2024年02月06日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包