Я пытаюсь отформатировать DateTime
результат и отобразить его пользователю в текущей локали устройства пользователя.
В настоящее время я могу отображать либо весь DateTime
, например:
2018-10-08 16: 08: 37.464112
Или указав точный формат, подобный этому:
DateFormat("dd.MM.yyyy").format(DateTime.now())
, что приводит к следующему:
08.10.2018
Моя проблема с этим решением заключается в том, что этот формат может быть приемлем в ЕС;например, в США (и многих других странах) они используются в другом формате даты, например,
10/08/2018
Мой вопрос : как вернуть пользователю только дату (не время) в формате их текущей локали?
Ответ :
Необходимо получить текущий языковой стандарт и передать его в функцию форматирования.Я использую класс пользовательских локализаций, но с готовым решением это будет выглядеть так:
DateFormat.yMMMd(Localizations.localeOf(context)).format(result);