前提・実現したいこと
ミリ秒が小数点以下3桁の String の date を、
小数点以下2桁の **OffsetDateTime **に変換したいです。
下記のようなコードだとエラーが発生します。
発生している問題・エラーメッセージ
java.time.format.DateTimeParseException: Text '2100-01-02T12:00:00.01Z' could not be parsed: Unable to obtain OffsetDateTime from TemporalAccessor: {InstantSeconds=4102574400},ISO,UTC resolved to 2100-01-02T12:00:00.010 of type java.time.format.Parsed
該当のソースコード
Java
1 String dateString = "2100-01-02T12:00:00.011Z"; 2 DateTimeFormatter inFmt = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'") 3 .withZone(ZoneId.of("UTC")); 4 5 ZonedDateTime date = ZonedDateTime.parse(dateString, inFmt); 6 7 DateTimeFormatter outFmt = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss.SS'Z'") 8 .withZone(ZoneId.of("UTC")); 9 10 return OffsetDateTime.parse(date.format(outFmt), outFmt);
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/28 04:20
2020/05/28 04:42
2020/05/28 05:05
2020/05/28 05:27