我收到一个表示日期的字符串,我需要将此字符串转换为日期,并验证该字符串是否为有效日期。
我收到字符串 33-12-2013,解析方法返回日期 01-01-2014,代码:
Date fechaVencimientoFormateada;
SimpleDateFormat formateador = new SimpleDateFormat( "dd-MM-yyyy" );
try
{
fechaVencimientoFormateada = formateador.parse( "33-12-2013" );
System.out.println( formateador.format(fechaVencimientoFormateada) );
}
catch ( ParseException e )
{
System.out.println("ERROR!");
}
输出:
2014 年 1 月 2 日星期四 00:00:00 COT
我预计会出现 ParseException,知道吗?
以及其他例子:
字符串日期:365-12-2013
输出:2014 年 11 月 30 日星期日 00:00:00 COT
字符串日期:2013 年 1 月 24 日
输出:2014 年 12 月 1 日星期一 00:00:00 COT
为什么 ParseException 没有抛出?
确保你setLenient(false)
on the SimpleDateFormat
。否则,它将无一例外地解析大量无效日期,并且您不能太信任输出。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)