【发布时间】:2022-01-07 01:07:18
【问题描述】:
我想将 LocalDateTime 2021-11-24T15:11:38.395 解析为 LocalDateTime 2021-11-24T15:11:38.39。但是 LocalDateTime.parse() 最后总是加零,忽略我的模式。
public class DateTimeFormatUtils {
private static final String ISO_DATE_TIME = "yyyy-MM-dd'T'HH:mm:ss.SS";
public static LocalDateTime formatToISO(final LocalDateTime localDateTime) {
DateTimeFormatter formatter = DateTimeFormatter.ofPattern(ISO_DATE_TIME);
return LocalDateTime.parse(formatter.format(localDateTime), formatter);
}
public static void main(String[] args) {
LocalDateTime now = LocalDateTime.now();
System.out.println(now);
System.out.println(formatToISO(now));
}
}
输出:
2021-11-30T11:48:28.449195200
2021-11-30T11:48:28.440
有没有办法解决这个问题?
【问题讨论】:
-
您要查找的是本地日期时间的特定格式(即字符串),而不是
LocalDateTime。这就像问“我如何获得double来代表5?我总是得到5.0” -
嗯,好的,我知道了
标签: java datetime datetime-format