时间格式问题

时间:2011-07-04 07:43:36

标签: java android time

我编写了以下代码来获取时间

public String getTime() {
    final Calendar cld = Calendar.getInstance();
    String time = cld.get(Calendar.HOUR) + ":" + (cld.get(Calendar.MINUTE));
    try {
        Date date = new SimpleDateFormat("HH:mm").parse(time);
        time = new SimpleDateFormat("HH:mm").format(date);
    } catch (ParseException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

    return time;
}

这总是给我时间

11:59

01:07

但我需要24小时格式,如:

11:59

13:07

如何更改代码。

5 个答案:

答案 0 :(得分:3)

使用HOUR_OF_DAY代替HOUR

答案 1 :(得分:1)

Calendar.HOUR =获取和设置的字段编号,表示上午或下午的小时。小时用于12小时制。例如,在10:04:15.250 PM,HOUR是10。

Calendar.HOUR_OF_DAY =获取和设置的字段编号,表示当天的小时。 HOUR_OF_DAY用于24小时制。例如,在10:04:15.250 PM,HOUR_OF_DAY是22。

答案 2 :(得分:1)

改为使用Calendar.HOUR_OF_DAY

答案 3 :(得分:1)

以下是代码:

Calendar cal = Calendar.getInstance();
int hour = cal.get(Calendar.HOUR_OF_DAY);
int minute = cal.get(Calendar.MINUTE);
String time = hour + ":" + minute;

答案 4 :(得分:0)

HH:mm是正确的。 01:07是凌晨1点,下午1点07分是下午1点。等到下午1点,看到或创建一个日期对象并进行测试。