解析在Java 8 日期偏移量中缺少冒號的ISO 8601 字符串
問題:
Java 8 的ZonedDateTime.parse() 方法無法解析偏移量中缺少冒號的ISO 8601 格式的日期字串,例如「2018-02-13T10:20:12.120 0000.」
解:
直到bug 被修正(Java 8 到121):
使用具有自訂模式的DateTimeFormatter 來指定偏移量中缺少的冒號:
<code class="java">String input = "2018-02-13T10:20:12.120+0000"; DateTimeFormatter f = DateTimeFormatter.ofPattern("uuuu-MM-dd'T'HH:mm:ss.SSSX"); OffsetDateTime odt = OffsetDateTime.parse(input, f);</code>
修正錯誤時:
只要使用ISO 8601 字串呼叫OffsetDateTime.parse() ,無模式:
<code class="java">OffsetDateTime odt = OffsetDateTime.parse("2018-02-13T10:20:12.120+0000");</code>
詳細資訊:
以上是如何解析 Java 8 日期偏移量中缺少冒號的 ISO 8601 字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!