0

次のようにフォーマッタを定義しています。

private static final DateTimeFormatter FORMATTER =
  new DateTimeFormatterBuilder()
      .parseCaseInsensitive()
      .appendLiteral("y")
      .appendValue(IsoFields.WEEK_BASED_YEAR, 4, 10, SignStyle.EXCEEDS_PAD)
      .appendLiteral("w")
      .appendValue(IsoFields.WEEK_OF_WEEK_BASED_YEAR, 2)
      .toFormatter();

次の解析呼び出しを使用して、有効であると思われる次の文字列を入力しています。

LocalDate.parse(inputString, FORMATTER).atStartOfDay()

の値は次のとおりですinputString

  • y2019w52
  • y2020w01
  • y2019w03

すべてが解析エラーをスローしています。次に例を示します。

テキスト 'y2019w03' を解析できませんでした: TemporalAccessor から LocalDate を取得できません: {WeekOfWeekBasedYear=3, WeekBasedYear=2019},タイプ java.time.format.Parsed の ISO

何か案は?

4

0 に答える 0