DateTimeFormatter formato incorrecto para dar casos extremos

Aman Gupta:

DateTimeFormatter No se da formato correcto para el 30 de diciembre y 31 de 2018 según el siguiente fragmento.

final String DATE_FORMAT = "YYYYMM";
DateTimeFormatter dateFormat = DateTimeFormatter.ofPattern(DATE_FORMAT);
LocalDateTime startDate = LocalDateTime.of(2018,12,29,5,0,0);
System.out.println(startDate.format(dateFormat));
//prints 201812
LocalDateTime startDate = LocalDateTime.of(2018,12,30,5,0,0);
System.out.println(startDate.format(dateFormat));
//prints 201912 <------ should be 201812
LocalDateTime startDate = LocalDateTime.of(2018,12,31,5,0,0);
System.out.println(startDate.format(dateFormat));
//prints 201912 <------ should be 201812

Es este el comportamiento esperado o hay un error con DateTimeFormatter?

Jens:

AAAA es el año semanas, aaaa es el año

Así Cambio final String DATE_FORMAT = "YYYYMM";ro final String DATE_FORMAT = "yyyyMM";que debe dar el resultado correcto. Para más información sobre los patrones de ver el Javadoc de DateTimeFormatter .

La primera semana de 2019 se inicia el 30 de DEC 2018. Ver este enlace para más información acerca de los años wee

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=171993&siteId=1
Recomendado
Clasificación