首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SimpleDateFormat在jdk1.4上返回错误的日期

SimpleDateFormat在jdk1.4上返回错误的日期
EN

Stack Overflow用户
提问于 2010-03-05 17:14:55
回答 2查看 1.1K关注 0票数 0
代码语言:javascript
复制
String format = "yyyyMMdd";
SimpleDateFormat formatter = getSimpleDateFormat(format);
formatter.setLenient(false);

Date date = formatter.parse("07312011",new ParsePosition(0));
System.out.println(date);

这给出了jdk1.4上的"2500-01-01 00:00:00“,这是不正确的,并且在jdk1.5上返回null

如果它不能解析日期,它是否默认使用此日期?

更新:

我知道如果我用20110731就行了.但是如果我通过了07312011,它在1.4中给出了一些随机的日期,在1.5中给出了空值,所以我的问题是

为什么它在1.5上返回null?

EN

回答 2

Stack Overflow用户

发布于 2010-03-05 17:16:12

尝试向其传递"20110731“,这与您指定的日期格式相对应。

票数 1
EN

Stack Overflow用户

发布于 2010-03-05 17:41:05

只有一个gues,有一个用于Java1.4的bug,用于忽略setLenient(false)设置。

Java1.5没有这个bug,因为一年中没有20个月,所以无法解析您的输入并返回null。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2385588

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档