【发布时间】:2014-11-08 10:59:34
【问题描述】:
当提供的日期字符串与给定格式 100% 不匹配时,我需要下面的代码开始失败。
SimpleDateFormat format = new SimpleDateFormat("MM/dd/yyyy");
format.setLenient(false);
format.parse("09/10/20144");
出于某种原因,即使使用 setLenient(false),此调用也会返回实际的 09/10/20144 日期。 我尝试将“new ParsePosition(0)”传递给解析调用,但这根本没有帮助,因为日期仍然返回为 09/10/20144。我需要确切日期格式的任何例外才能失败。有什么好的方法吗?
【问题讨论】:
-
给定
2014/10/09时会失败吗?因为我认为它不关心数字的确切数量——在 8000 年后代码将停止工作。但是如果你希望它只接受那么多字母,你可以随时检查输入字符串的长度。 -
这实际上是一个非常简单但很好的主意,我认为这将解决我现在的问题。谢谢
标签: java date simpledateformat