Как я могу получить текущую дату в Android? - PullRequest
136 голосов
/ 28 декабря 2011

Я написал следующий код

Date d = new Date();
CharSequence s  = DateFormat.format("MMMM d, yyyy ", d.getTime());

Но спрашивает у меня параметр, я хочу текущую дату в строковом формате,

как

28-Dec-2011

, чтобы я мог установить TextView,

объясните немного, если вы считаете, что что-то необходимо, я новичок в разработке Android.

Ответы [ 24 ]

343 голосов
/ 28 декабря 2011

Вы можете использовать класс SimpleDateFormat для форматирования даты в желаемом формате.

Просто перейдите по этой ссылке, чтобы получить представление о своем примере.

Например:

String dateStr = "04/05/2010"; 

SimpleDateFormat curFormater = new SimpleDateFormat("dd/MM/yyyy"); 
Date dateObj = curFormater.parse(dateStr); 
SimpleDateFormat postFormater = new SimpleDateFormat("MMMM dd, yyyy"); 

String newDateStr = postFormater.format(dateObj); 

Обновление:

Подробный пример здесь , я бы посоветовал вам пройти этот пример и понять концепциюкласса SimpleDateFormat.

Окончательное решение:

Date c = Calendar.getInstance().getTime();
System.out.println("Current time => " + c);

SimpleDateFormat df = new SimpleDateFormat("dd-MMM-yyyy");
String formattedDate = df.format(c);
132 голосов
/ 29 марта 2013

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

String date = new SimpleDateFormat("yyyy-MM-dd", Locale.getDefault()).format(new Date());
27 голосов
/ 28 декабря 2011

Это не имеет ничего общего с Android, так как он основан на Java, поэтому вы можете использовать

private String getDateTime() { 
   DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
   Date date = new Date(); 
   return dateFormat.format(date); 
}
12 голосов
/ 28 декабря 2011
 public String giveDate() {
    Calendar cal = Calendar.getInstance();
    SimpleDateFormat sdf = new SimpleDateFormat("EEE, MMM d, yyyy");
    return sdf.format(cal.getTime());
 }
8 голосов
/ 28 декабря 2011

попробуйте,

SimpleDateFormat timeStampFormat = new SimpleDateFormat("yyyyMMddHHmmssSS");
Date myDate = new Date();
String filename = timeStampFormat.format(myDate);
6 голосов
/ 24 сентября 2015

Работает как шарм и преобразуется в строку в качестве бонуса;)

SimpleDateFormat currentDate = new SimpleDateFormat("dd/MM/yyyy");
      Date todayDate = new Date();
    String thisDate = currentDate.format(todayDate);
6 голосов
/ 28 декабря 2011
CharSequence s  = DateFormat.getDateInstance().format("MMMM d, yyyy ");

Сначала вам нужен экземпляр

5 голосов
/ 02 февраля 2016
 String date = new SimpleDateFormat("yyyy-MM-dd").format(new Date());

// импортировать класс даты как java.util

4 голосов
/ 23 февраля 2018
SimpleDateFormat df = new SimpleDateFormat("dd-MMM-yyyy");
String date = df.format(Calendar.getInstance().getTime());
4 голосов
/ 30 сентября 2013
Calendar cal = Calendar.getInstance();      
Calendar dt = Calendar.getInstance(); 
dt.clear();
dt.set(cal.get(Calendar.YEAR), cal.get(Calendar.MONTH),cal.get(Calendar.DATE)); 
return dt.getTime();        
...