Проблема с DateTimeFormatter для AM/PM [дубликат]JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Проблема с DateTimeFormatter для AM/PM [дубликат]

Сообщение Anonymous »

Я использую Java 8 для форматирования объекта String в LocalDateTime.
Моя строка — «24 мая 2024 года, 11:57», и я использую шаблон — «дд МММ». , гггг 'ат' чч:мм а". Когда я анализирую эту строку в одном тестовом файле Java, она работает нормально. Но когда я вставил ту же логику в свою основную программу, я получаю сообщение об ошибке:
Фрагмент основной программы:

Код: Выделить всё

DateTimeFormatter dtf = DateTimeFormatter.ofPattern("dd MMM, yyyy 'at' hh:mm a");
trans.transaction_date = LocalDateTime.parse((emailContent.substring(startIndex, endIndex).trim()),dtf);
Ошибка

Код: Выделить всё

java.time.format.DateTimeParseException: Text '24 May, 2024 at 11:57 AM' could not be parsed at index 22
at java.base/java.time.format.DateTimeFormatter.parseResolved0(DateTimeFormatter.java:2052)
at java.base/java.time.format.DateTimeFormatter.parse(DateTimeFormatter.java:1954)
at java.base/java.time.LocalDateTime.parse(LocalDateTime.java:494)
at com.sushant.finAutomation.financeAutomation.loadAmexTransactions(financeAutomation.java:404)
at com.sushant.finAutomation.financeAutomation.openEmailSocket(financeAutomation.java:358)
at com.sushant.finAutomation.financeAutomation.access$2(financeAutomation.java:293)
at com.sushant.finAutomation.financeAutomation$2$1.run(financeAutomation.java:177)

Один файл Java, работает нормально

Код: Выделить всё

import java.text.ParseException;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;

public class tets22 {

public static void main(String[] args) throws ParseException {
String dateStr = "24 May, 2024 at 11:57 AM";
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("dd MMM, yyyy 'at' hh:mm a");
DateTimeFormatter dtf1 = DateTimeFormatter.ofPattern("dd MMM, yyyy HH:mm");

LocalDateTime datetime = LocalDateTime.parse(dateStr,dtf);

System.out.println(datetime.format(dtf1));
}
}
Может ли кто-нибудь помочь мне определить причину этой проблемы? Поскольку в сообщении об ошибке есть строка, которую нужно проанализировать, оно получается правильным — я не могу отладить эту проблему.
Я пытался отформатировать строку в объект LocalDateTime с помощью DateTimeFormat, но выдает ошибку .

Подробнее здесь: https://stackoverflow.com/questions/785 ... -for-am-pm
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»