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 第五章 用户行为数据仓库 严格按照企业的标准开发 第六章 搭建业务数仓理论基础和对表的分类同步 第七章 业务数仓的搭建  业务行为数仓效果图  
目录
相关文章
|
消息中间件 RocketMQ
rocketmq 超过4M消息体怎么发送
rocketmq 超过4M消息体怎么发送
765 1
|
Java 数据库连接 Maven
IDEA下Maven骨架(archetype)搭建
通过Maven生成骨架(通用项目目录结构)流程记录
2142 1
|
SQL XML Java
MyBatis-Plus多表关联查询
MyBatis-Plus多表关联查询
2677 0
|
Java 关系型数据库 MySQL
如何下载远程maven仓库的jar 手动放到本地仓库?
如何下载远程maven仓库的jar 手动放到本地仓库?
3316 0
|
安全 Java 数据库
SpringSecurity-4-认证流程源码解析
SpringSecurity-4-认证流程源码解析
339 0
|
Java Spring
No qualifying bean of type 'XXXXX' available
该文档描述了Spring框架中`org.springframework.beans.factory.NoSuchBeanDefinitionException`异常的处理方法,该异常是因为无法找到类型为`com.weblog.auth.mapper.UserMapper`的bean导致。解决办法包括在对应的Mapper上添加`@Mapper`注解,并在启动类上添加`@MapperScan`注解以扫描包含Mapper接口的文件夹。
1514 8
|
Java Spring
运行@Async注解的方法的线程池
自定义@Async注解线程池
795 3
|
Unix
bat批处理命令之Start的详细用法\批处理打开指定的应用程序\批处理最大化\最小化打开程序
bat批处理命令之Start的详细用法\批处理打开指定的应用程序\批处理最大化\最小化打开程序
4436 0
05-流式操作:使用 Flux 和 Mono 构建响应式数据流(上)
05-流式操作:使用 Flux 和 Mono 构建响应式数据流
783 0

热门文章

最新文章