Этот код Java:
LocalDate.parse("12 Сен 2018", DateTimeFormatter.ofLocalizedDate(FormatStyle.MEDIUM).withLocale(new Locale("ru", "RUS")).ofPattern("dd MMM yyyy"));
ведет к
java.time.format.DateTimeParseException: Text '12 Сен 2018' could not be parsed at index 3
at java.base/java.time.format.DateTimeFormatter.parseResolved0(DateTimeFormatter.java:2046)
at java.base/java.time.format.DateTimeFormatter.parse(DateTimeFormatter.java:1948)
at java.base/java.time.LocalDate.parse(LocalDate.java:428)
Перепробовал все Правильный русский перевод строки месяца Java примеры - безрезультатно.
Что не так с этим кодом?
Примечание: я использую Java 8
Upd:
Попробовал это на локальной машине и в онлайн-компиляторе - в онлайн-компиляторе работает на локальной машине - пришла ошибка.
Map<Long, String> map = new HashMap<>();
map.put(1L, "Янв");
map.put(2L, "Фев");
map.put(3L, "Мар");
map.put(4L, "Апр");
map.put(5L, "Май");
map.put(6L, "Июн");
map.put(7L, "Июл");
map.put(8L, "Авг");
map.put(9L, "Cен");
map.put(10L, "Окт");
map.put(11L, "Ноя");
map.put(12L, "Дек");
DateTimeFormatter formatter = new DateTimeFormatterBuilder()
.appendPattern("dd ")
.appendText(ChronoField.MONTH_OF_YEAR, map)
.appendPattern(" yyyy")
.toFormatter(new Locale("ru", "RU"));
System.out.println(LocalDate.parse("12 Cен 2018", formatter));