Ко мне приходит время в таком виде: "2017-12-04T15:45:11.635Z"
.
Для преобразование в Date
ставлю такую аннотацию над соответствующим полем:
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-ddTHH:mm:ssZ")
На что получаю такую ошибку:
{
"timestamp": 1512388174163,
"status": 500,
"error": "Internal Server Error",
"exception": "org.springframework.web.client.RestClientException",
"message": "Could not extract response: no suitable HttpMessageConverter found for response type [class ru.something.api.domain.AwesomeObject] and content type [application/json;charset=UTF-8]",
"path": "/consent/test"
}
Как формат необходимо указать для правильной десериализации времени?
Для того, чтобы затолкать данную строку в переменную, нужно использовать такой паттерн
String s = "2017-12-04T15:45:11.635Z";
ZonedDateTime zonedDateTime = ZonedDateTime.parse(s, DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss.SSSX"));
Он же стандарт ZonedDateTime zonedDateTime = ZonedDateTime.parse(s, DateTimeFormatter.ISO_ZONED_DATE_TIME);
А вообще в частном случае для присвоения переменной переменно типа ZonedDateTime можно вообще без паттернов ZonedDateTime zonedDateTime = ZonedDateTime.parse(s);
Обратите внимание, что используется именно ZonedDateTime , потому как переменных типа Date довольно много в разных пакетах, не факт , что она предназначена для хранения не только даты , а и времени да еще и с часовым поясом. Посему мой совет - распарсите сначала в переменную ZonedDateTime , а там уже достаточно методов из коробки для конвертации куда угодно, если, конечно, это вообще нужно
Виртуальный выделенный сервер (VDS) становится отличным выбором
Для реализации приложения требуется получить GSM Cell ID, к которой подключено устройство, приложение не нуждается в мощном интерфейсе, поэтому...
Не отображается название процесса в logcat, процесс устройства эмулятора отображаетсяИспользую Android Studio 3
Появилась нужда выровнять текст по обоим краям, WebView не подходит, хочу именно в TextView, посмотрел несколько библиотек, но для такого не совсем...