6

これは奇妙に思えます。Java 8 は、ミリ秒がゼロであるかどうかに応じて、出力のフォーマットが異なります。Java 8 (1.8.0_20) がゼロであるかどうかに関係なく、常にミリ秒を吐き出すように強制するにはどうすればよいですか?

public static void main(String[] args) {
    TemporalAccessor zeroedMillis = DateTimeFormatter.ISO_OFFSET_DATE_TIME.parse("2015-07-14T20:50:00.000Z");
    TemporalAccessor hasMillis = DateTimeFormatter.ISO_OFFSET_DATE_TIME.parse("2015-07-14T20:50:00.333Z");
    System.out.println(DateTimeFormatter.ISO_OFFSET_DATE_TIME.format(zeroedMillis));
    System.out.println(DateTimeFormatter.ISO_OFFSET_DATE_TIME.format(hasMillis));
}

2015-07-14T20:50:00Z
2015-07-14T20:50:00.333Z
4

1 に答える 1