JSR-310-解析可变长度的秒分数

JSR-310-解析可变长度的秒分数,第1张

JSR-310-解析可变长度的秒分数

这样可以解决问题:

DateTimeFormatter formatter = new DateTimeFormatterBuilder()    .appendPattern("yyyy-MM-dd HH:mm:ss")    .appendFraction(ChronoField.MICRO_OF_SECOND, 0, 6, true)    .toFormatter();System.out.println(LocalDateTime.parse("2015-05-07 13:20:22.276052", formatter));System.out.println(LocalDateTime.parse("2015-05-07 13:20:22.276", formatter));System.out.println(LocalDateTime.parse("2015-05-07 13:20:22", formatter));// output2015-05-07T13:20:22.2760522015-05-07T13:20:22.2762015-05-07T13:20:22

JiriS的答案不正确,因为它使用,

appendValue
而正确的方法是使用
DateTimeFormatterBuilder.appendFraction
(它也处理小数点)。差异可以在第二个系统中看到,其中
appendValue
错误地解析了“2015-05-07T13:20:22.000276”。

LocalDateTime.parse(str,formatter)
在大多数情况下,解析时比直接使用格式化程序更整洁。

使用生成器时,请利用

appendPattern()
optionalStart()
保持其整洁。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5103501.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-17
下一篇 2022-11-17

发表评论

登录后才能评论

评论列表(0条)

保存