Мне нужно отобразить дату и время в формате настроек устройства пользователя (с текстом «at»). Например:
На устройстве США это может быть: 2 ноября 2018 года в 17:28:20
На индийском: 2 ноября 2018 года в 17: 28: 20
На русском языке: 2 ноября 2018 года в 17: 28: 20
Это должно зависеть от пользовательских настроек устройства и языка. Также он должен содержать секунды. Это должно выглядеть как дата и время в пользовательских обзорах на консоли Google Play.
Не могли бы вы помочь, как это реализовать?
p.s. Я храню информацию о дате и времени в sqlite и читаю так:
String milliseconds = cursor.getString(cursor.getColumnIndex("datetime"));
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try {
date = format.parse(milliseconds);
//But how to format this date now?
//I found the following two functions:
Format dateFormat = android.text.format.DateFormat.getLongDateFormat(context);
Format timeFormat = android.text.format.DateFormat.getTimeFormat(context);
String finalDateTime = dateFormat.format(date) + " at " + timeFormat.format(date);
//But here time without seconds. How to add seconds?
}
Кроме того, может быть, есть более правильный способ чтения из базы данных? Но это второй вопрос.