我这样创建了一个DateTimeFormatterBuilder
:
val customFormatter = new DateTimeFormatterBuilder()
.appendValue(WeekFields.ISO.weekBasedYear(),4)
.appendValue(WeekFields.ISO.weekOfWeekBasedYear(),2)
.appendValue(ChronoField.DAY_OF_WEEK,1)
.toFormatter()
要解析以下字符串的星期2013014
2015233
2020117
,我正在使用:
val weekFields = WeekFields.of(Locale.getDefault())
LocalDate.parse(dateString,customFormatter).get(weekFields.weekBasedYear())
结果如下:
+-------+----+----+---+
|partcol|year|week|day|
+-------+----+----+---+
|2013014|2013| 1| 4|
|2015233|2015| 23| 3|
|2020117|2020| 12| 7|
+-------+----+----+---+
2020
的星期将始终比期望值高+1。在这种情况下,我试图解析时间信息以获取weekBasedYear
,weekOfWeekBasedYear
和DAY_OF_WEEK
。
openjdk version "1.8.0_232"
OpenJDK Runtime Environment Corretto-8.232.09.1 (build 1.8.0_232-b09)
OpenJDK 64-Bit Server VM Corretto-8.232.09.1 (build 25.232-b09,mixed mode)