转换解析TIME dd.MM.yyyy',' 12:00时出错

时间:2014-03-12 09:10:47

标签: java parsing date time

3 个答案:

答案 0 :(得分:8)

要获得24小时格式,请使用HH而不是hh。在12小时格式中,小时数可以是0 - 11,这会使12溢出到0

使用

SimpleDateFormat sdf = new SimpleDateFormat("dd.MM.yyyy', 'HH:mm");

答案 1 :(得分:1)

首先来看看Simpledatrformat的模式。它清楚地显示H为(0-23)。

Reference for Date Format Pattern Syntax

所以你应该改变你的代码,如下所示。

SimpleDateFormat sdf = new SimpleDateFormat("dd.MM.yyyy', 'HH:mm");
Date date_current =  new Date();
Date date_start = null;
date_start = sdf.parse("12.03.2014, 12:00");
System.out.println("now time is.." + date_start);

OR

使用此:

Date date = new Date();
date.setHours(date.getHours() + 8);
System.out.println(date);
SimpleDateFormat simpDate;
simpDate = new SimpleDateFormat("kk:mm:ss");
System.out.println(simpDate.format(date));

谢谢..使用上面的代码正确解析!!

答案 2 :(得分:1)

使用24小时日期格式  SimpleDateFormat sdf = new SimpleDateFormat(" dd.MM.yyyy',' HH:mm");