Simpledateformat没有检查日期验证?

时间:2014-11-18 12:39:28

标签: java date-format

我有一个涉及日期转换的REST api。为此,它有dateString及其format之类的输入。但我的问题是我无法验证某些负面情况的日期。例如

new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse("29-09-2014 20:35:27");

我希望上面的代码会抛出异常,但事实并非如此。所以我的验证失败了。 任何人都可以提出解决方案

1 个答案:

答案 0 :(得分:4)

你需要告诉DateFormat严格解析,而不是宽大地解析(默认):

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
sdf.setLenient(false);
sdf.parse("29-09-2014 20:35:27"); // Throws ParseException