当前位置: 首页 > news >正文

java实现Excel模板导出

【Easyexcel】根据模板导出excel

使用 com.alibaba的easyexcel根据模板导出excel文件

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

  

7AEF5A24-5CE9-4705-972E-6997308AD361

 相关代码如下:

public static void main(String[] args) {// 2. 准备输出文件路径String outputPath = "output_with_template.xlsx";// 3. 准备数据Map<String, Object> singleData = new HashMap<>();singleData.put("aa", "2023年度销售报表");singleData.put("cc", new Date());singleData.put("bb", "张三");singleData.put("hh", "1500000000");singleData.put("af", "这是一次测试水水水水水水水水");List<Map<String, Object>> listData = new ArrayList<>();for (int i = 1; i <= 9; i++) {Map<String, Object> item = new HashMap<>();item.put("bb", "产品" + i);item.put("kk", 10000 * i);item.put("pl", 100 * i);item.put("jj", "15%");item.put("ff", "xx%");listData.add(item);}List<Map<String, Object>> listData2 = new ArrayList<>();for (int i = 1; i <= 9; i++) {Map<String, Object> item = new HashMap<>();item.put("bbb", "产品" + i);item.put("kkk", 10000 * i);item.put("ppl", 100 * i);item.put("jjj", "15%");item.put("fff", "xx%");listData2.add(item);}// 4. 执行导出
//        try (InputStream template = InvestigationController.class.getResourceAsStream("C:\\Users\\13966\\Desktop\\case_template.xlsx")) {String templateFilePath = "C:\\Users\\13966\\Desktop\\case_template.xlsx"; // 替换为实际绝对路径try (InputStream template = new FileInputStream(new File(templateFilePath))) {
//            EasyExcel.write(outputPath).withTemplate(template).sheet().doFill(listData);//单个对象写法ExcelWriter excelWriter = EasyExcel.write(outputPath).withTemplate(template).build();// 构建工作表(默认第一个sheet)WriteSheet writeSheet = EasyExcel.writerSheet().build();// 2. 填充列表数据(表格数据),配置纵向填充(默认纵向,可根据需要改为横向)FillConfig fillConfig = FillConfig.builder().direction(WriteDirectionEnum.VERTICAL) // 纵向填充.forceNewRow(Boolean.TRUE)//强制为每个列表元素插入新行,不覆盖原有行(注意:必须时Boolean.TRUE 不能直接填true否则不生效).build();// 1. 填充单个数据(如标题、日期等)excelWriter.fill(singleData,fillConfig, writeSheet);excelWriter.fill(new FillWrapper("listData", listData), fillConfig, writeSheet);excelWriter.fill(new FillWrapper("listData2", listData2) , fillConfig, writeSheet);// 完成填充,释放资源excelWriter.finish();System.out.println("导出成功,文件路径: " + new File(outputPath).getAbsolutePath());} catch (Exception e) {System.err.println("导出失败: " + e.getMessage());e.printStackTrace();}}

  效果示例:

image

 

http://www.jsqmd.com/news/112836/

相关文章:

  • 深度剖析:北京律师实力测评指南 2025-2026 - 苏木2025
  • 【赵渝强老师】Docker容器的资源管理机制
  • 2025年12月国内平行双螺杆挤出机品牌排行:口碑好的厂家推荐!哪家好细致分析! - 品牌推荐用户报道者
  • 家装指南:2025年厦门口碑装修公司精选攻略 - 品牌测评鉴赏家
  • 2025年泥浆泵活塞工厂权威推荐榜:铜骨架由壬密封厂/泥浆泵胶皮/软盘根加工厂精选 - 品牌推荐官
  • 2025年厦门口碑装修公司精选与避坑攻略 - 品牌测评鉴赏家
  • 厦门原创设计装修公司全解析:从风格到落地的匠心之选 - 品牌测评鉴赏家
  • 新手PM必学:多项目并行任务优先级怎么排(含RICE等思路)
  • postgresql数据库连接数限制
  • 考完软件工程啦
  • MATLAB实现Bouc-Wen模型动力响应计算
  • 关于java中类和对象的学习总结
  • 2025/12/19 今天学的day7的总结
  • 【赵渝强老师】Docker的图形化管理工具
  • 办公室翻新公司推荐:行业优质选择与服务解析 - 品牌排行榜
  • 2025年红点奖申报资深企业TOP5推荐,把握红点奖的获奖机会 - myqiye
  • 展厅设计公司有哪些?国内优质机构实力推荐 - 品牌排行榜
  • 广州雅思培训机构推荐:本地优质学习机构一览 - 品牌排行榜
  • 2025年多槽超声波清洗机专业厂家推荐,清洗设备品牌厂商与厂商全解析 - 工业推荐榜
  • 年终报告 | 2025年中国AI客服机器人市场格局与最佳实践选型 - 品牌2025
  • 2025 年 12 月锡条厂家权威推荐榜:精选高温抗氧化锡条,揭秘卓越焊接性能与长效稳定性的行业首选 - 品牌企业推荐师(官方)
  • 2025年度十大顶尖广告公司,揭秘行业领军者!上海做得好的广告4A公司排行帕特广告专注产品质量 - 品牌推荐师
  • 2025/12/19 今天学的day6的lecode24和19
  • 2025 陕西办公室装修设计公司五大推荐,西安装修公司哪家靠谱?大品装修领衔实力之选 - 深度智识库
  • 2025年12月GEO,GEO优化,GEO技术公司推荐:行业测评与选择指南 - 品牌鉴赏师
  • 2025年电磁铁吊车生产厂家权威推荐榜单:吸盘式电磁铁/电磁吊具吸盘/天车电磁吊源头厂家精选 - 品牌推荐官
  • Panasonic Programming Contest 2025(AtCoder Beginner Contest 427)
  • 2025年12月智能数控机床实力厂家权威推荐榜:专机/双头对接/线轨硬轨/重型机床全品类深度解析与选购指南 - 品牌企业推荐师(官方)
  • 青岛超级学长怎么样?本地出国语培机构业务与服务解析 - 品牌排行榜
  • iOS 组合布局(UICollectionViewCompositionalLayout)