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