9

我刚开始使用Joda-Time,并让它以24 小时制(“军事时间”)正确显示我的日期,但我宁愿它是上午/下午。查了一下,它提到了hourOfDay,我认为这是 HH 值,所以我尝试编写一个循环,将其分解为 AM/Pm,但它从未成功。

    DateTime dtf = new DateTime(wikiParsedDate);


    if (hourOfDay == 00) {
        hourOfDay == 12;
        DateTimeFormatter builder = DateTimeFormat.forPattern( "dd-MM-yyyy HH:mm:ss.SS'AM" );
        return builder.print(dtf);
    } else if (0 < hourOfDay && hourOfDay < 12) {
        DateTimeFormatter builder = DateTimeFormat.forPattern( "dd-MM-yyyy HH:mm:ss.SS'AM" );
        return builder.print(dtf);
    } else if (hourOfDay > 12) {
        hourOfDay - 12 == hourOfDay;
        DateTimeFormatter builder = DateTimeFormat.forPattern( "dd-MM-yyyy HH:mm:ss.SS'PM" );
        return builder.print(dtf);
    }

}
4

1 回答 1

22

查看DateTimeFormat. 这应该做你想要的:

DateTimeFormatter builder = DateTimeFormat.forPattern("dd-MM-yyyy hh:mm:ss.SSa");

不需要不同情况的并发症。

于 2013-09-29T06:43:14.780 回答