Как получить полную дату с правильным форматом?

Я пытаюсь получить дату.

Я использую это для даты и месяца

int date = cld.get(Calendar.DATE);
int month = cld.get(Calendar.MONTH);

Вместо того, чтобы возвращаться как int, я хочу, чтобы это была строка. или, возможно, полный формат даты.

Например: 12/12/12 или...

14 августа 2011 г.

Как я могу это сделать?

Ответ 1

Вам нужно узнать о SimpleDateFormat.

Основы для получения текущего времени в формате ISO8601:

DateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mmZ");
String now = df.format(new Date());

Для других форматов:

DateFormat df = new SimpleDateFormat("MMM d, yyyy");
String now = df.format(new Date());

или

DateFormat df = new SimpleDateFormat("MM/dd/yy");
String now = df.format(new Date());

Ответ 2

Пожалуйста, используйте

android.text.format.DateFormat.getDateFormat(контекст контекста) android.text.format.DateFormat.getTimeFormat(контекст контекста)

чтобы получить допустимые форматы времени и даты в смысле текущих пользовательских настроек (например, формат 12/24).

import android.text.format.DateFormat;

private void some() {
    final Calendar t = Calendar.getInstance();
    textView.setText(DateFormat.getTimeFormat(this/*Context*/).format(t.getTime()));
}

Ответ 3

Вы можете получить дату как ваше желание ниже

Date date = new Date();
String string = (String) DateFormat.format("yyyy-MM-dd hh:mm:ss", date.getTime());

Вы можете заменить это (yyyy-MM-dd hh: mm: ss) как ваше желание, например (yy-MM-dd hh: mm)

Ответ 4

Вы можете получить полную дату в одной строке:

String string = (String) DateFormat.format("yyyy-MM-dd hh:mm:ss", new Date().getTime());

Вы можете использовать эту ссылку для получения дополнительных форматов: