【发布时间】:2021-11-11 10:56:36
【问题描述】:
我正在使用这段代码片段将日期和时间字符串转换为 Joda DateTime 对象 -
String time = "124204";
String date = "05/09/25";
DateTimeFormatter formatter = DateTimeFormat.forPattern("dd/mm/yyhhmmss").withZone(DateTimeZone.UTC);
String dateInString = date.concat(time);
DateTime dateTime = DateTime.parse(dateInString, formatter);
System.out.println(dateTime);
我得到的输出是 - 2025-01-05T00:42:04.000Z
但我希望它为 - 2025-01-05T00:42:04.000000Z
我希望 mili 秒精度为 6 位。
我该怎么做?感谢您的帮助。
【问题讨论】:
-
您使用 Joda Time 有什么原因吗?尽管它比使用
Date、Calendar或SimpleDateFormat更好,但您确实应该使用java.time中提供的更新的 Java 日期和时间 API。 -
毫秒精度不能是六位数,毫秒按定义是三位数。您似乎想要的是微秒精度。但是,您似乎将
toString()的输出与某些所需的渲染混淆了。如果您想要dateTime的不同呈现方式,则需要使用适当的格式化程序。 -
请注意,格式模式字母区分大小写。请再次检查您是否需要
mm或MM、hh或HH。
标签: java datetime jodatime milliseconds dateformatter