형식 "yyMMdd"
의 DateTimeFormatter
을 사용하면 이상한 일이 발생합니다 ... LocaleDate.of(0,1,5)
은 "010105"
으로 서식이 지정되지만 "000105"는 LocalDate.of(2015, 1, 5)
으로 정확하게 구문 분석됩니다. 왜 그거야 ?? 테스트를 위해DateTimeFormatter는 LocalDate.of (0,1,5)를 "010105"로 구문 분석합니까?
:
@Test
public void testYear2000() {
LocalDate localDate = LocalDate.of(0, 1, 5);
String format = DateTimeFormatter.ofPattern("yyMMdd").format(localDate);
assertThat(format, is("000105")); // fail! it is "010105"
LocalDate parse = LocalDate.parse("000105", DateTimeFormatter.ofPattern("yyMMdd"));
assertThat(parse, is(LocalDate.of(2000, 1, 5))); //pass
}