繁体   English   中英

SimpleDateFormat返回带有无效日期字符串的奇怪日期

[英]SimpleDateFormat returns strange date with invalid date string

我尝试解析时间格式字符串,现在当我解析字符串“ 2014-01-07 95:25:37”时,它返回一个日期,而不抛出ParseException。 谁知道如何让它抛出ParseException。 谢谢乔治。

SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

System.out.print(  ft.parse("2014-01-07 95:25:37"));

输出:

Fri Jan 10 23:25:37 EST 2014

问题的原因是时间:95:25:37。 Java尝试将这额外的时间添加到您的工作日中,因此您将获得额外的3天。

为了防止Java这样做,可以使用以下命令:

 ft.setLenient(false);

使用setLenient验证输入日期String

ft.setLenient(false);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM