DateTimePrinterParser :
, , . , DateTimeFormatterBuilder.parse(), , .
-, Value(YearOfEra,4,19,EXCEEDS_PAD) 00, , , 4 19. DateTimeFormatter, DateTimeParseContext, .
, xx, , .
:
final SimpleDateFormat sdf = new SimpleDateFormat("yyyyMM'00'");
System.out.println(sdf.parse("20150100"));
"main" java.text.ParseException: : "20150100" java.text.DateFormat.parse(DateFormat.java:366)
final DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyyMM'00'");
System.out.println(dateTimeFormatter.parse("20150100", YearMonth::from));
"main" java.time.format.DateTimeParseException: '20150100' 0 java.time.format.DateTimeFormatter.parseResolved0 (DateTimeFormatter.java:1949) java.time.format.DateTimeFormatter.parse(DateTimeFormatter.java:1851)
:
final SimpleDateFormat sdf = new SimpleDateFormat("yyyyMM'xx'");
System.out.println(sdf.parse("201501xx"));
Thu Jan 01 00:00:00 EST 2015
final DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyyMM'xx'");
System.out.println(dateTimeFormatter.parse("201501xx", YearMonth::from));
2015-01