java.time.format.DateTimeParseException: Text could not be parsed at index 0

372
15 октября 2018, 12:20

При запуске программы, реализующей анализ даты и времени, с использованием класса LocaleDateTime:

// Parse a date and time. 
import java.time.*; 
import java.time.format.*; 
class DateTimeDemo4 { 
  public static void main(String args[]) { 
    // Obtain a LocalDateTime object by parsing a date and time string. 
    LocalDateTime curDateTime = 
         LocalDateTime.parse("June 21, 2014 12:01 AM", 
                  DateTimeFormatter.ofPattern("MMMM d',' yyyy hh':'mm a")); 
     // Now, display the parsed date and time. 
    System.out.println(curDateTime.format( 
               DateTimeFormatter.ofPattern("MMMM d',' yyyy h':'mm a"))); 
  } 
}

Постоянно выводится исключение:

Exception in thread "main" java.time.format.DateTimeParseException: Text 'June 21, 2014 12:01 AM' could not be parsed at index 0
    at java.time.format.DateTimeFormatter.parseResolved0(DateTimeFormatter.java:1949)
    at java.time.format.DateTimeFormatter.parse(DateTimeFormatter.java:1851)
    at java.time.LocalDateTime.parse(LocalDateTime.java:492)
    at DateTimeDemo4.DateTimeDemo4.main(DateTimeDemo4.java:12)

Как исправить?

Answer 1

Скорее всего, исключение выводится из-за того, что Ваш компьютер соответствует неверной языковой локации (в данном случае используется английская). Следовательно, её нужно явно указать.

Решение

Указываем Locale.US в данном примере:

import java.time.*;
import java.time.format.*;
import java.util.Locale;
class DateTimeDemo4 {
    public static void main(String args[]) {
        // Obtain a LocalDateTime object by parsing a date and time string.
        LocalDateTime curDateTime = LocalDateTime.parse("June 21, 2014 12:01 AM",
                DateTimeFormatter.ofPattern("MMMM d',' yyyy hh':'mm a", Locale.US));
        // Now, display the parsed date and time.
        System.out.println(curDateTime.format(DateTimeFormatter.ofPattern("MMMM d',' yyyy hh':'mm a", Locale.US)));
    }
}

Получаем ожидаемый результат:

June 21, 2014 12:01 AM
READ ALSO
java.rmi.ConnectException: Connection refused to host

java.rmi.ConnectException: Connection refused to host

При запуске клиент-серверного приложения, использующего механизм RMI, вылетает исключение javarmi

267
Как использовать свои html теги в textview?

Как использовать свои html теги в textview?

Например есть текст: "<![CDATA[Трали <c>вали</c>]]>"и вывожу я его так:

223
Android Java RecyclerView. Не отображается на экране

Android Java RecyclerView. Не отображается на экране

Видел подобные вопросы, не нашёл ответа на свойЛибо смотрю не туда

223
Немного едет верстка на телефонах

Немного едет верстка на телефонах

Кто знает, почему на одних телефонах едет верстка, а на других нет? Причем в инспекторе 320-1920 все нормально выглядитНапишу ссылку на всякий...

220