String строку даты преобразовать в Date

113
10 июля 2021, 00:50

Есть такие даты в String, как преобразовать в Date date?

7 авг 2019

7 авг. 2019

Answer 1
String data2 = "7 янв. 2019";
SimpleDateFormat formatter = new SimpleDateFormat("dd MMM yyyy", new Locale("ru"));
Date date = formatter.parse(data2.replaceAll("\\.",""));
Answer 2

Данный ответ не идеален. Но за костыль сойдет

    public static void main(String[] args) {
        String data1 = "7 янв 2019";
        String data2 = "7 янв. 2019";
        System.out.println(dateConvertor(data1));
        System.out.println(dateConvertor(data2));
    }
    public static Date dateConvertor(String date){
        List<String> month = new ArrayList<>();
        month.add("янв");
        //добавить еще 11 месяцев
        //Делим на 3 части - день/месяц/год
        String[] dateArray = date.split(" ");
        //удаляем точку
        dateArray[1] = dateArray[1].replaceAll("\\.", "");
        //заменяем месяц на английское слово
        dateArray[1] = String.valueOf(month.indexOf(dateArray[1]) + 1);
        Date dateResult = null;
        try {
            dateResult =  new SimpleDateFormat("d M yyyy").parse(dateArray[0] + " " + dateArray[1] + " " + dateArray[2]);
        } catch (ParseException e){
        }
        return dateResult;
    }
READ ALSO
Как прервать отладку без выполнения дальнейшего кода в Intellij Idea?

Как прервать отладку без выполнения дальнейшего кода в Intellij Idea?

В Intellij Idea Ultimate запускаю такой код в режиме отладки:

131
Юнит-тестирование Activity и Fragment

Юнит-тестирование Activity и Fragment

Как известно из коробки в Android Studio для юнит-тестов поставляется JUnit

76
Как сделать такую игру по сети?

Как сделать такую игру по сети?

Как отметил ЮрийСПБ в комментариях, необходимо написать сервер и клиентВся игровая ситуация моделируется на сервере и её состояние сообщается...

125
Цикл &lt;c:choose&gt; в JSP

Цикл <c:choose> в JSP

Имеется jsp страница, вызываемая двумя параметрами action(одна на оба параметра)Внутри нее хочу сделать два разных блока, в зависимости от пришедшего...

75