解析军事时间不适用于1200到1259年的时间

时间:2017-08-24 08:20:23

标签: java date

我试图将军事时间转换为日期,除非时间范围从1200到12:59,否则效果很好。预期时间为12:MM而不是00:MM。

String format = String.format("%04d", Integer.parseInt(milTime));
date = new SimpleDateFormat("hhmm").parse(format);

以下是一些例子: -

1)milTime:1245  <--- Input
Date: Thu Jan 01 00:45:00 EST 1970   //Expecting Thu Jan 01 12:45:00 EST 1970

2)milTime:1200
Date:Thu Jan 01 00:00:00 EST 1970    //Expecting Thu Jan 01 12:00:00 EST 1970

1 个答案:

答案 0 :(得分:1)

您应该使用"HHmm"作为日期格式说明符而不是"hhmm" - 根据this documentationH用于从零开始的24小时格式h用于基于1的12小时格式。