Как обрабатывать LocalDateTime из API, который возвращает дату и время в другом формате?

Я использую шаблон отдыха для вызова API в Java, который возвращает этот объект:

@JsonIgnoreProperties(ignoreUnknown = true)
@Getter
public class MyObject {
    //@JsonDeserialize(using = LocalDateTimeDeserializer.class)
    private LocalDateTime accessTime;
    private String name;
}

Проблема в том, что accessTime, полученный API, выглядит так:

2020-04-29 12:52:57

И я не могу использовать LocalDateTimeDeserializer.

Это следующая ошибка:

Can not deserialize value of type java.time.LocalDateTime from String \"2020-04-29 12:52:57\": Text '2020-04-29 12:52:57' could not be parsed at index 10

Как мне с этим справиться? Спасибо

1 ответ

Я предполагаю, что вы ищете метод, который будет получать локальную дату и время в строке из API, а затем использовать этот метод и сохранять преобразованный формат local date time. Это метод, который может вам помочь:

private LocalDateTime TryPase(string accessTime)
{
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm"); //edit your format
return LocalDateTime.parse(accessTime, formatter);
}
Другие вопросы по тегам