【发布时间】:2017-08-29 18:00:45
【问题描述】:
我有一个 API 可以以三种可能的格式返回 JSON 格式的日期值:
- 2017-04-30T00:00+02:00
- 2016-12-05T04:00
- 2016-12-05
我需要将这三个都转换为java.time.LocalTimeDate。 Joda 在DateTime 对象上有一个很好的构造函数,它将所有三种格式都作为字符串接受并转换它们。 DateTime dt = new DateTime(StringFromAPI); 就够了。
Java 8 中是否有类似的功能(java.time 包)?看来我现在首先必须正则表达式 String 来检查格式,然后创建 LocalDateTime、ZonedDateTime 或 LocalDate 并将后者 2. 转换为 LocalDateTime。对我来说似乎有点麻烦。有什么简单的方法吗?
【问题讨论】:
-
所以第一种格式的
+02:00应该被忽略?您是在假设第三个时间为 0:00(午夜)吗? -
@OleV.V.是的,是的。
-
感谢您的澄清。在那种情况下,我猜对了,并坚持我的答案。
标签: java datetime time jodatime