【发布时间】:2020-07-21 18:54:20
【问题描述】:
public static String convertInDateTimeSecondTOJodaTime(String dateTime) {
try {
DateTimeFormatter formatter = DateTimeFormat.forPattern("yyyy-MM-dd'T'HH:mm:ss'Z'");
DateTime date = formatter.parseDateTime(dateTime).withZoneRetainFields(DateTimeZone.UTC);
return date.toString("h:mm aa");
} catch (Exception e) {
return null;
}
}
main(){
print(convertInDateTimeSecondTOJodaTime("2020-04-09T07:31:16Z"))
}
我正在尝试使用 joda 日期时间将给定的日期时间转换为 UTC 格式,它给出了错误的时间,它是在一小时前给出的,请帮助我做错了什么。
所需的结果是伦敦时间,因此在本例中为上午 8:31。
【问题讨论】:
-
永远不要将
Z硬编码为格式模式字符串中的文字。这是一个偏移量,因此需要被划桨。这可能是您错误时间的原因之一。 -
没关系,但是当我尝试转换当前日期时间时,我也得到了错误的 UTC 时间我比我早一个小时,你能建议如何以 UTC 获取当前时间跨度>