Я пытаюсь использовать Android SimpleDateFormat
так:Android SimpleDateFormat, как его использовать?
String _Date = "2010-09-29 08:45:22"
SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd");
try {
Date date = fmt.parse(_Date);
return fmt.format(date);
}
catch(ParseException pe) {
return "Date";
}
Результат хороший и у меня есть: 2010-09-29
Но если я изменю SimpleDateFormat
к
SimpleDateFormat("dd-MM-yyyy");
в
проблема в том, что я получу 03-03-0035 !!!!
Почему и как получить формат, например, dd-MM-yyyy
?
Просто сторона примечания, простой старый String.format(), также может использоваться для форматирования вывода даты. Он не так читается, как SimpleStringFormat, но, вероятно, немного быстрее, что-то вроде: String.format («% td-% tm-% tY», дата). – Drejc
Вместо этого используйте: новый SimpleDateFormat («dd-MM-yyyy», Locale.US); –
Фактически оба теперь более или менее устарели ... с новым классом Instant вы, вероятно, лучше с: DateTimeFormatter.ofPattern («yyyy-MM-dd»). WithZone (ZoneOffset.UTC) .format (Instant) – Drejc