【发布时间】:2017-02-07 19:01:51
【问题描述】:
我尝试将此字符串转换为 java LocalDateTime
String str = "2016-09-29 09:54:27.850373"
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.mmmmmm");
configActivityLog.activityTimeStamp = LocalDateTime.parse(str, formatter);
但我收到此错误:
java.lang.IllegalArgumentException: Too many pattern letters: m
【问题讨论】:
-
ss是秒,而不是毫秒。S代表毫秒。 -
仍然无法正常工作。如何解决?
-
改用
ssSSS(秒最多可以有2位数字,毫秒最多可以有3位)。其余部分,即您的示例中的373,将被忽略,因为 Java 不能表示纳米精度日期。 -
试试
HH:mm:ss.SSSSS -
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSSSSS");为我工作
标签: java string postgresql datetime