poi导出excel的一个合并单元格的方法

1、最近在做一个导出excel的需求,过程中整合了一个合并列相同单元格的方法

/**
     * 合并列单元格
     * @param xfSheet 工作表对象
     * @param column 需要合并的列
     * @param row 从第row行开始合并
   * @param begin 跳过空白行开始的行数
*/ public void mergedColumn(Sheet xfSheet,int column,int row,int begin){ int regionStart = 1; Map map = new LinkedHashMap<>(); List> list = new ArrayList<>(); for (int i = begin;i){ if (i<xfSheet.getLastRowNum()){ String secondIndex = xfSheet.getRow(i).getCell(column).getStringCellValue(); String secondIndex2 = xfSheet.getRow(i+1).getCell(column).getStringCellValue(); if (!secondIndex.equals(secondIndex2)){ map.put(regionStart,i); regionStart=i+1; } }else if (i==xfSheet.getLastRowNum()){ map.put(regionStart,i); regionStart=i+1; } } list.add(map); for (Map rmap : list){ for (Integer i : rmap.keySet()){ if (i >= row) { if (!i.equals(rmap.get(i))) { xfSheet.addMergedRegion(new CellRangeAddress(i, rmap.get(i), column, column)); } } } } },integer>();i++,integer>

Original: https://www.cnblogs.com/qml0725/p/16377789.html
Author: gz、qml
Title: poi导出excel的一个合并单元格的方法

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/580513/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • Java 求两区间的交集,并返回交集区间

    java;gutter:true; public double[] confMatrix(double[] arr1, double[] arr2){ double[] con =…

    Java 2023年5月29日
    092
  • java项目中的classpath的理解

    在java项目中,你一定碰到过classpath,通常情况下,我们是用它来指定配置/资源文件的路径。在刚开始学习的时候,自己也糊里糊涂,但是现在,是时候弄清楚它到底是指什么了。 顾…

    Java 2023年5月29日
    0255
  • Cobol代码通过工具自动生成java代码 展示版

    本例是通过工具将cobol代码自动生成java代码。生成后的java代码是按照java编程风格生成的,完全屏蔽了cobol的特性。 一个cobol代码生成了4个java代码,分别说…

    Java 2023年6月8日
    064
  • 2022美团Java后端开发春招实习面经

    ​ 五层架构:应用层、运输层、网络层、数据链路层、物理层 ​ HTTP 是超⽂本传输协议,也就是HyperText Transfer Protocol ​ HTTP协议拆解为超文本…

    Java 2023年6月7日
    066
  • 《Java2 实用教程(第五版)》教学进程

    《Java2 实用教程(第五版)》教学进程 目录 《Java2 实用教程(第五版)》教学进程 预备作业1:你期望的师生关系是什么? 预备作业2 :学习基础和C语言基础调查 预备作业…

    Java 2023年5月29日
    090
  • 日常白痴_Date的比较及增减操作

    一直以来,获取日期都是用new Date(),再不然,顶多用个SimpleDateFormat规范一下格式忽然遇到需求,需要对日期增加和比较大小的时候,就又懵住了,唉,每天都为自己…

    Java 2023年6月7日
    061
  • maven常用命令和maven指令生命周期以及maven概念模型图

    maven常用命令 clean:把我们自己编译好的项目中的信息删除掉,清除本地编译好的信息 mvn compile:是吧src main下的方法进行编译放置在target目录下 m…

    Java 2023年6月6日
    069
  • Day8-笔记(接口、内部类、异常)

    接口就是规范,定义的是一组规则。 接口的本质是契约。 OO的精髓,是对对象的抽象,最能体现这一点的就是接口。 接口的作用: //interface 定义的关键字,接口都需要有实现类…

    Java 2023年6月6日
    079
  • c3p0-config.xml

    c3p0-config.xml 一般将 c3p0 连接池的配置文件放置到到src目录下,该文件制订了连接数据库和连接池的相关参数。可以更方便的连接MySQL数据库。 com.mys…

    Java 2023年6月8日
    066
  • GitStats-统计Git所有提交记录工具

    如果你是研发效能组的一员或者在从事 CI/CD 或 DevOps,除了提供基础设施,指标和数据是也是一个很重要的一环,比如需要分析下某个 Git 仓库代码提交情况: 该仓库的代码谁…

    Java 2023年6月9日
    065
  • sqlserver 数据导入MySQL

    yyyy/mm/dd hh:mm:ss 不修改,导入的时候会提示不合法的值,因为Excel格式化时间戳的算法和MySQL的不一样,所以导入只能按字符串导入 数据无价需谨慎操作,最好…

    Java 2023年6月15日
    065
  • 关于数据拓展及面试题讲解 Java

    强类型语言 要求变量的使用严格符合规定,所有变量都必须先定义后才能使用 弱类型语言 Java 的数控类型分为两大类 基本类型(primitive type ) 引用类型(refer…

    Java 2023年6月5日
    065
  • 日常踩坑_@ConfigurationProperties显示prefix must be in canonical form

    在使用 @ConfigurationProperties时,好死不死报了一个我看不懂的红,像这样 我自然是一副很懵逼的状态,红线上写的错是prefix must be in can…

    Java 2023年6月7日
    068
  • 使用Gradle构建Java项目

    使用Gradle构建Java项目 这个手册将通过一个简单的Java项目向大家介绍如何使用Gradle构建Java项目。 我们将要做什么? 我们将在这篇文档中创建一个简单的Java项…

    Java 2023年5月29日
    060
  • Spring-data-jpa乐观锁和悲观锁实现

    https://blog.csdn.net/u012326462/article/details/81349157 https://www.cnblogs.com/sweetchi…

    Java 2023年5月30日
    087
  • springrain 1.1 发布,spring 的极简封装

    经过2个月的测试修改,springrain1.1已经稳定,今日发布. 主要改动如下: 1.添加批量更新和保存的方法 2.添加maven分支 3.添加博客管理的demo 4.增加re…

    Java 2023年5月30日
    065
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球