Я использую компонент DatePicker, который поставляется с фреймворком пользовательского интерфейса Vaadin. Когда я получаю значение из средства выбора даты, оно имеет следующий формат:
"Sat Apr 13 00:00:00 GMT 37"
Мне нужно запросить серверную службу, для которой требуется формат:
"yyyy-MM-dd"
Как я могу преобразовать в этот формат? Спасибо :)
Неа. Я не могу найти ничего, что показывало бы, как преобразовать этот конкретный формат «Сб, 13 апреля, 00:00:00 по Гринвичу 37».
@Clancinio Что такое 37 в вашей строке даты и времени?
Значение DatePicker — LocalDate. Узнайте, как преобразовать LocalDate в различные отформатированные строки.
@ArvindKumarAvinash 37 год. Интересно, почему пользователь выбрал дату 1985 и полтора года назад; но они сделали.
LocalDate date = datePicker.getValue();
String formattedDate = date.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));
Этот формат, стандартный формат ISO 8601, используется LocalDate#toString
по умолчанию. Не надо DateTimeFormatter
. Просто используйте: datePicker.getValue().toString()
вы можете прочитать любой учебник об изменении форматов даты gl