感觉 sheet.setDefaultColumnStyle 存在 bug

场景是已经有模板,有表头,获取模板后还需要动态增加一些表头,在使用 org.apache.poi 的包导出 excel 的时候,我用了 sheet.setDefaultColumnStyle 来设置动态表头整列的格式为文本,这个也是参考了网上的很多办法,但是一直没生效

Sheet sheet = workbook.getSheetAt(0);
Row headRow = sheet.getRow(1);CellStyle headStyle = workbook.createCellStyle();
headStyle.setAlignment(HorizontalAlignment.CENTER);
headStyle.setVerticalAlignment(VerticalAlignment.CENTER);// 以下是网上找到的办法
// CellStyle textCellStyle = workbook.createCellStyle();
// textCellStyle.setDataFormat(STRING_FORMAT);
// 设置整列为文本格式 防止读取异常
// DataFormat textDataFormat = workbook.createDataFormat();
// headStyle.setDataFormat(textDataFormat.getFormat("@"));int index = 15;
for (DynamicFieldConf conf : configList) {  // DynamicFieldConfResp 是我自己的动态累sheet.setColumnWidth(index, 5120);sheet.setDefaultColumnStyle(index, textCellStyle);   // 这个可能是工具的bug,没有生效 后面考虑优化Cell cell = headRow.createCell(index);cell.setCellStyle(headStyle);cell.setCellType(CellType.STRING);// cell.setCellType(Cell.CELL_TYPE_STRING);if (conf .getMust() == 1) {cell.setCellValue("*" + conf .getName());} else {cell.setCellValue(conf .getName());}index ++;
}

后来我妥协了,我想了另外一个愚蠢的办法,就是事先在模板上将固定表头后面的其他很多列先手动将单元格格式设置成文本,然后再去读取渲染动态表头,但是其实如果直接动态从0到1生成一个 excel 上面的代码还是有效果的,所以我怀疑是因为我读取了现有的 excel 再去动态生成,也不知道是不是

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/673927.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何将国风与品牌信息相结合?

随着人们消费观念的转型升级。「国风」成为深受品牌欢迎的营销元素,它能够通过东方美学引起用户。然而有许多品牌在国风营销中稍不注意就会踩雷,今天媒介盒子就来和大家聊聊:国风营销怎么做才能吸引用户。 一、 与用户生活结合 要找到传统文…

解释性与非解释性

解释性与非解释性是两种不同的方法或观点,广泛应用于科学研究、数据分析、哲学、法律等领域中。它们在处理信息、提供理解和推导结论方面有着根本的区别。 解释性(Interpretative) 解释性方法侧重于理解和解释现象背后的含义、原因和背景。这…

ChatGPT高效提问—prompt常见用法(续篇四)

ChatGPT高效提问—prompt常见用法(续篇四) 1.1 知识生成 ​ 知识生成是指使用自然语言处理技术,通过ChatGPT等AI模型生成与特定主题相关的知识、文本或回答。在知识生成过程中,模型接收prompt输入的问题、指令或上下文信息&…

JVM体系

JVM是一种虚拟的计算机,它模拟了一个完整的硬件系统,并运行在一个完全隔离的环境中。这意味着JVM可以看作是一个在操作系统之上的计算机系统,与VMware、Virtual Box等虚拟机类似。JVM的设计目标是提供一个安全、可靠、高效且跨平台的运行环境…

vue安装依赖--save-dev和--save的区别是啥

就是使用这2种方法后就发现哪种都可以 dependencies:运行时的依赖,发布后,即生产环境下还需要用的模块 devDependencies:开发时的依赖。里面的模块是开发时用的,发布时用不到它。 作为一名后端开发人员,我…

Vue3中路由配置Catch all routes (“*“) must .....问题

Vue3中路由配置Catch all routes (“*”) must …问题 文章目录 Vue3中路由配置Catch all routes ("*") must .....问题1. 业务场景描述1. 加载并添加异步路由场景2. vue2中加载并添加异步路由(OK)3. 转vue3后不好使(Error)1. 代码2. 错误 2. 处理方式1. 修改前2. 修…

8_姿态的其他描述及一般坐标系映射

1.机器人姿态的其他表示方法 前面说的用33矩阵矩阵描述姿态,9个元素,6个约束条件,实际上只有3个独立元素。即用3个独立元素即可描述机器人姿态。常用的有RPY角,欧拉角和四元数。 1.1 RPY角 RPY角是船舶在海上航行时常用的一种姿态…

基于java+springboot+vue实现的高校物品捐赠管理系统(文末源码+Lw)23-151

第1章 绪论 当前的网络技术,软件技术等都具备成熟的理论基础,市场上也出现各种技术开发的软件,这些软件都被用于各个领域,包括生活和工作的领域。随着电脑和笔记本的广泛运用,以及各种计算机硬件的完善和升级&#xf…

构建你的Python知识体系:一份详尽的Python知识图谱指南

序言:知识地图的重要性 当我们谈论Python知识图谱时,脑海中浮现的是一幅层次分明、结构清晰的知识网络,它将Python语言的各个核心概念、技术栈以及应用场景有机地连接起来,形成一个完整的知识生态系统。掌握这份图谱不仅有助于新…

gitee_pingo集成图床

利用Gitee搭建免费图床(详细教程)_gitee搭建图床-CSDN博客

Elasticsearch基于分区的索引策略

分区索引,或者更常见的说法,基于分区的索引策略,是一种按照特定规则(如时间、地理位置、业务线等)将数据分散到多个不同的索引中的方法。这种做法可以提高Elasticsearch的性能和可管理性,尤其是在处理大量数…

不到1s生成mesh! 高效文生3D框架AToM

论文题目: AToM: Amortized Text-to-Mesh using 2D Diffusion 论文链接: https://arxiv.org/abs/2402.00867 项目主页: AToM: Amortized Text-to-Mesh using 2D Diffusion 随着AIGC的爆火,生成式人工智能在3D领域也实现了非常显著…

NOR FLASH与NAND FLASH的详细区别

Flash 是常见的用于存储数据的半导体器件,它具有容量大、可重复擦写、按“扇区/块”擦除、掉电后数据可继续保存的特性。常见的Flash 主要有NOR Flash 和Nand Flash 两种类型,它们的特性如表 37.1.2.1.1 所示。NOR 和 NAND 是两种数字门电路,…

信钰证券:2024年最新创业板开通条件?

创业板是深圳证券买卖所建立的一个专门为创新型、成长型企业服务的板块,受到了不少投资者的关注。对于2024年最新创业板注册条件,信钰证券下面就为我们详细介绍一下。 2024年最新创业板注册条件: 1、投资者的财物要求:投资者申请…

JavaScript基础(28)_获取元素的其他样式

其他样式操作的属性 clientWidth(只读):获取元素的"可见宽度",包括内容区和内边距(返回的是一个数字,不带px,可直接进行计算)。 clientHeight(只读):获取元素的"可见高度",包括内容区…

大数据应用对企业的价值

目录 一、大数据应用价值 1.1 大数据技术分析 1.2 原有技术场景的优化 1.2.1 数据分析优化 1.2.2 高并发数据处理 1.3 通过大数据构建新需求 1.3.1 智能推荐 1.3.2 广告系统 1.3.3 产品/流程优化 1.3.4 异常检测 1.3.5 智能管理 1.3.6 人工智能和机器学习 二、大数…

mac电脑安装cocoapods出错,以及安装最新版本ruby方法

macbook安装cocoapods时碰到一个报错:大概率是ruby的版本太低导致的 sudo gem install cocoapods ERROR: Error installing cocoapods: ERROR: Failed to build gem native extension. ... Could not create Makefile due to some reason, probably lack of neces…

Mountain Lake - Forest Pack

从头开始构建的50个岩石森林资源集合,充分利用了HDRP。还支持Universal 和Built-In。 支持Unity 2020.3+、高清渲染管线、通用渲染管线、标准渲染管线。导入包后,按照README中的说明进行操作。 Mountain Lake - Rock & Tree Pack是一个由50个准备好的资源组成的集合,从头…

如何运行心理学知识(心流)来指导工作和生活

如何运用心流来指导工作和生活 如何联系我 作者:鲁伟林 邮箱:thinking_fioa163.com或vlinyes163.com GitHub:https://github.com/thinkingfioa/ReadingSummary 版权声明:文章和记录为个人所有,如果转载或个人学习…

提高网站访问速度 nginx 常用配置参数

Nginx是一种高性能的HTTP和反向代理服务器,因其轻量级、高并发处理能力和易于配置而广受欢迎。要提高网站访问速度,可以通过优化Nginx配置来实现。以下是一些可以用来提高网站访问速度的Nginx配置参数,以及它们的详细说明: …