Chr*_*sel 5 java console formatting datetime
这看起来很怪异.Java 8根据millis是否为零来格式化输出.你如何强迫Java 8(1.8.0_20)总是吐出millis,无论它们是否为零?
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
Run Code Online (Sandbox Code Playgroud)
你不用ISO_OFFSET_DATE_TIME
,基本上:)
如果您按照文档进行操作,最终您的文档中ISO_LOCAL_TIME
包含:
这将返回一个不可变格式化程序,它能够格式化和解析ISO-8601扩展本地时间格式.格式包括:
- 两个数字的小时.这是预先填充零以确保两位数.
- 结肠
- 分钟的两位数.这是预先填充零以确保两位数.
- 如果第二分钟不可用,则格式完成.
- 结肠
- 二分钟的两位数.这是预先填充零以确保两位数.
- 如果纳秒级为零或不可用,则格式完成.
- 小数点
- 纳秒级的一到九位数.将根据需要输出许多数字.
如果你总是想要3个数字,我怀疑你想要DateTimeFormatter.ofPattern
的模式yyyy-MM-dd'T'HH:mm:ss.SSSX
.
归档时间: |
|
查看次数: |
1663 次 |
最近记录: |