EasyExcel 修改导出的文件属性

EasyExcel 修改导出的文件属性

导出的文件有多种属性,本文只针对sheet名称进行举例

需要自定义拦截器

java 复制代码
ExcelWriter excelWriter =
        EasyExcel.write(fileName)
            .withTemplate(stream)
            .registerWriteHandler(new TemplateSheetStrategyHandler())
            .build()

registerWriteHandler (new TemplateSheetStrategyHandler())

TemplateSheetStrategyHandler为自定义拦截器

自定义拦截器需要重写对应情况的方法

每个Excel所需拦截器都需要自定义,不可以通用

java 复制代码
/**
 * @Author Christ @Date 2023/9/4 17:13 @Version 1.0
 */
public class TemplateSheetStrategyHandler implements SheetWriteHandler {

  // 文件创建后,修改文件的第一个sheet的名称为自定义名称一
  @Override
  public void afterSheetCreate(
      WriteWorkbookHolder writeWorkbookHolder, WriteSheetHolder writeSheetHolder) {
    writeWorkbookHolder.getCachedWorkbook().setSheetName(0, "自定义名称一");
  }
}

SheetWriteHandler 中有 创建前和创建后各两种,本文并未做太过详细描述,具体修改方式根据需求自行查看 WriteWorkbookHolder,WriteSheetHolder,SheetWriteHandlerContext 所提供的api接口

(不用翻文档和github了,啥都没有)

相关推荐
callJJ几秒前
Spring设计模式与依赖注入详解
java·spring·设计模式·idea·工厂模式
ExiFengs3 分钟前
Java使用策略模式实现多实体通用操作的优雅设计
java·开发语言·设计模式·策略模式
茶本无香4 分钟前
设计模式之三—工厂模式:灵活对象创建的艺术
java·开发语言·设计模式·工厂模式
week_泽20 分钟前
第7课:管理长期记忆的关键架构决策 - 学习笔记_7
java·笔记·学习·ai agent
爱装代码的小瓶子23 分钟前
【c++进阶】c++11下类的新变化以及Lambda函数和封装器
java·开发语言·c++
乌萨奇也要立志学C++25 分钟前
【Linux】线程同步 条件变量精讲 + 生产者消费者模型完整实现
java·linux·运维
澄澈青空~25 分钟前
病毒木马侵入系统内核的底层运作机理
java·linux·服务器
lkbhua莱克瓦2439 分钟前
进阶-存储对象2-存储过程上
java·开发语言·数据库·sql·mysql
杨杨杨大侠43 分钟前
深入理解 LLVM:从编译器原理到 JIT 实战
java·jvm·编译器
qq_336313931 小时前
java基础-IO流(随机点名器)
java·开发语言·python