我想以最简单的方式使用新的 Java 8 时间库将以下带有分区偏移量的字符串转换为 DateTime 类型:
2016-04-11T22:56:00.000-0500
我已经尝试过 ISO_OFFSET_DATE_TIME 格式和 ZonedDateTime 对象,但我似乎无法找到一种简单的方法来做到这一点。提前致谢。
我想以最简单的方式使用新的 Java 8 时间库将以下带有分区偏移量的字符串转换为 DateTime 类型:
2016-04-11T22:56:00.000-0500
我已经尝试过 ISO_OFFSET_DATE_TIME 格式和 ZonedDateTime 对象,但我似乎无法找到一种简单的方法来做到这一点。提前致谢。
我认为您不会找到一个内置的格式化程序来解析该字符串,但创建一个相当简单:
DateTimeFormatter fmt = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss.SSSx");
OffsetDateTime date = OffsetDateTime.parse("2016-04-11T22:56:00.000-0500", fmt);
您的问题的解决方案应如下所示:
String ts = "2016-04-11T22:56:00.000-0500";
ZonedDateTime zdt = ZonedDateTime.parse(ts, DateTimeFormatter.ISO_OFFSET_DATE_TIME);