POI设置日期类型时间约束createDateConstraint不生效了

简介: POI设置日期类型时间约束createDateConstraint不生效了

背景

在使用 POI 导出 excel 时间类型加入时间约束时,发生了使用 Excel 打开无法正确使用时间约束的问题,但是在 永中Office 打开可以使用

关键词

helper.createDateConstraint,POI设置时间约束

设置时间约束的代码如下

该代码是有问题的,正确的代码在文章末尾

String dateFormat = "yyyy/MM/dd";
            String start = "1900,01,01";
            String end = "2399,12,30";
            constraint = helper.createDateConstraint(DataValidationConstraint.OperatorType.BETWEEN, start, end, dateFormat);

解决思路

1、排查使用 POI 设置的时间约束与在 Excel 中创建的时间约束有什么不通

2、修改格式化日期格式测试是否可以生效

3、修改日期范围大小测试是否生效

4、查看 createDateConstraint 方法接收的参数各是什么意思,需要什么格式

5、查阅网上资料

问题所在

经过上面几步的排查,初步确定应该是设置的日期格式问题,但是不懂如何正确设置,所以交给了优秀的互联网,google 一下,此时发现一篇文章写的不错(http://t.csdn.cn/OyWGv),解决了我的问题,然后继续查阅引用链接(https://www.demo2s.com/java/apache-poi-datavalidationhelper-createdateconstraint-int-operatortype.html),最终找到了答案,解决问题

最终代码

String dateFormat = "yyyy/MM/dd";
            String start = "Date(1900,01,01)";
            String end = "Date(2399,12,30)";
            constraint = helper.createDateConstraint(DataValidationConstraint.OperatorType.BETWEEN, start, end, dateFormat);

即将设置的日期加入 Date 的包装即可

参考链接

1、https://www.demo2s.com/java/apache-poi-datavalidationhelper-createdateconstraint-int-operatortype.html

2、http://t.csdn.cn/OyWGv


相关实践学习
基于Hologres轻量实时的高性能OLAP分析
本教程基于GitHub Archive公开数据集,通过DataWorks将GitHub中的项⽬、行为等20多种事件类型数据实时采集至Hologres进行分析,同时使用DataV内置模板,快速搭建实时可视化数据大屏,从开发者、项⽬、编程语⾔等多个维度了解GitHub实时数据变化情况。
阿里云实时数仓实战 - 用户行为数仓搭建
课程简介 1)学习搭建一个数据仓库的过程,理解数据在整个数仓架构的从采集、存储、计算、输出、展示的整个业务流程。 2)整个数仓体系完全搭建在阿里云架构上,理解并学会运用各个服务组件,了解各个组件之间如何配合联动。 3 )前置知识要求:熟练掌握 SQL 语法熟悉 Linux 命令,对 Hadoop 大数据体系有一定的了解   课程大纲 第一章 了解数据仓库概念 初步了解数据仓库是干什么的 第二章 按照企业开发的标准去搭建一个数据仓库 数据仓库的需求是什么 架构 怎么选型怎么购买服务器 第三章 数据生成模块 用户形成数据的一个准备 按照企业的标准,准备了十一张用户行为表 方便使用 第四章 采集模块的搭建 购买阿里云服务器 安装 JDK 安装 Flume 第五章 用户行为数据仓库 严格按照企业的标准开发 第六章 搭建业务数仓理论基础和对表的分类同步 第七章 业务数仓的搭建  业务行为数仓效果图  
目录
相关文章
|
9月前
|
机器学习/深度学习 人工智能 负载均衡
《人工智能驾驭复杂网络拓扑:网络规模扩张下的管理之道》
在数字化时代,网络规模持续扩大,拓扑结构日益复杂,传统管理方式难以应对。人工智能凭借强大数据处理与决策能力,成为解决这一难题的关键技术。它通过智能拓扑发现、动态路由优化、故障预测诊断及资源智能分配等策略,有效提升网络性能与可靠性。例如,谷歌B4网络和阿里巴巴电商网络成功应用AI技术,实现了高效资源利用与快速故障修复。未来,结合区块链与量子计算等新兴技术,人工智能将推动网络拓扑管理迈向更智能、安全与高效的阶段,助力构建可靠的数字世界。
266 5
TortoiseSVN安装使用教程(超详细)
TortoiseSVN安装使用教程(超详细)
10983 58
|
10月前
|
Java Maven
Idea配置项目的热启动
Idea配置项目的热启动
1174 5
Idea配置项目的热启动
|
9月前
|
调度 决策智能 知识图谱
腾讯云大模型知识引擎驱动 DeepSeek 满血版能源革命大模型:架构、优势与产业变革
腾讯云大模型知识引擎驱动的DeepSeek满血版能源革命大模型,融合了超大规模知识、极致计算效能和深度行业理解,具备智能预测、优化调度、设备健康管理和能源安全预警等七大功能模块。该模型通过分布式计算和多模态融合,提供精准的能源市场分析与决策支持,广泛应用于智慧风电场管理、油气田开发、能源市场交易等十大场景,助力能源行业的数字化转型与可持续发展。
|
10月前
|
Java Spring
SpringBoot 实战 不同参数调用不同实现
本文介绍了如何在实际工作中根据不同的入参调用不同的实现,采用`map+enum`的方式实现优雅且严谨的解决方案。通过Spring Boot框架中的工厂模式或策略模式,避免了使用冗长的`if...else...`语句。文中详细展示了定义接口、实现类、枚举类以及控制器调用的代码示例,确保用户输入的合法性并简化了代码逻辑。
358 1
SpringBoot 实战 不同参数调用不同实现
|
关系型数据库 MySQL 索引
MySQL in 太多的解决方案
MySQL in 太多的解决方案
1336 0
network is not ready: runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady me
network is not ready: runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady me
485 1
|
存储 JSON 监控
告别Print,使用IceCream进行高效的Python调试
本文将介绍**IceCream**库,这个专门用于调试的工具显著提升了调试效率,使整个过程更加系统化和规范化。
311 2
告别Print,使用IceCream进行高效的Python调试
|
网络协议 数据库 网络架构
OSPF常用配置和常用的查看命令
OSPF常用配置和常用的查看命令
1150 0
|
Kubernetes 容器
Warning FailedScheduling 14m (x12 over 16m) default-scheduler 0/1 nodes are available: 1 node(s
Warning FailedScheduling 14m (x12 over 16m) default-scheduler 0/1 nodes are available: 1 node(s
490 0

热门文章

最新文章