乐趣区

关于后端: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-c…),最终找到了答案,解决问题

最终代码

 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-c…

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

本文由 mdnice 多平台公布

退出移动版