2014-03-25 125 views
2

如何在Android中的字符串中獲取當前日期?如何在字符串中獲取當前系統日期 - ANDROID

我知道它使用

Calendar c = Calendar.getInstance(); 
SimpleDateFormat df = new SimpleDateFormat("dd-MMM-yyyy"); 
String formatDate = df.format(c.getTime()); 

是gettable但我把它作爲25-MAR-2014,和我想要的是25-3-2014。謝謝。

回答

7

試試這個..

變化dd-MMM-yyyydd-MM-yyyy

SimpleDateFormat df = new SimpleDateFormat("dd-MM-yyyy"); 
String formatDate = df.format(c.getTime()); 
+0

你的解決方案是差不多吧,看我的答案;-) –

1

使用

String date = new SimpleDateFormat("yyyy-MM-dd") 
          .format(new Date()); 
1

你所傳遞的DateFormatdd-MMM-yyyy的意志給你一個月的話。將其更改爲dd-MM-yyyy

SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy"); 
String date = sdf.format(new Date(System.currentTimeMillis())); 
1

你應該使用的日期格式爲SimpleDateFormat("dd-MM-yyyy");不喜歡SimpleDateFormat("dd-MMM-yyyy");。這裏是文檔SimpledateFormat

SimpleDateFormat df = new SimpleDateFormat("dd-MM-yyyy"); 
String formatDate = df.format(c.getTime()); 
+0

這將以月份爲名。但是歐普希望這個月的數字表示不是單詞表示。 – 2014-03-25 05:27:34

1

簡單的改變!

使用#

SimpleDateFormat df = new SimpleDateFormat("dd-MM-yyyy"); 

相反#

SimpleDateFormat df = new SimpleDateFormat("dd-MMM-yyyy"); 
1
String dateInString = "7-Jun-2013"; 
try { 

    Date date = formatter.parse(dateInString); 
    System.out.println(date); 
    System.out.println(formatter.format(date)); 

} catch (ParseException e) { 
    e.printStackTrace(); 
} 
1
Date date = new Date(); 
     SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy"); 
     String formattedDate = sdf.format(date); 
0
try this one... 


Calendar c = Calendar.getInstance(); 
    SimpleDateFormat df = new SimpleDateFormat("dd-MM-yyyy"); 
    String formatDate = df.format(c.getTime()); 

    System.out.print(formatDate); 


if you want to change vice versa means follow below steps.. 

    int selectedYear = 2013; 
    int selectedDay = 20; 
    int selectedMonth = 11; 

    Calendar cal = Calendar.getInstance(); 
    cal.set(Calendar.YEAR, selectedYear); 
    cal.set(Calendar.DAY_OF_MONTH, selectedDay); 
    cal.set(Calendar.MONTH, selectedMonth); 
    String format = new SimpleDateFormat("E, MMM d, yyyy").format(cal.getTime()); 


or else 

DateFormat dateFormat = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss Z", Locale.ENGLISH); 

or 

GregorianCalendar cal = new GregorianCalendar(); 
     int y, m, d, a; 

     y = cal.get(Calendar.YEAR); 
     m = cal.get(Calendar.MONTH) + 1; 
     d = cal.get(Calendar.DAY_OF_MONTH); 
     cal.set(_year, _month, _day); 
String format = new SimpleDateFormat("E, MMM d, yyyy").format(cal.getTime()); 

hope it will help you 
1

下面是一些格式獲得的慾望日期。

    yyyy-MM-dd 1969-12-31 
       yyyy-MM-dd 1970-01-01 
      yyyy-MM-dd HH:mm 1969-12-31 16:00 
      yyyy-MM-dd HH:mm 1970-01-01 00:00 
      yyyy-MM-dd HH:mmZ 1969-12-31 16:00-0800 
      yyyy-MM-dd HH:mmZ 1970-01-01 00:00+0000 
    yyyy-MM-dd HH:mm:ss.SSSZ 1969-12-31 16:00:00.000-0800 
    yyyy-MM-dd HH:mm:ss.SSSZ 1970-01-01 00:00:00.000+0000 
yyyy-MM-dd'T'HH:mm:ss.SSSZ 1969-12-31T16:00:00.000-0800 
yyyy-MM-dd'T'HH:mm:ss.SSSZ 1970-01-01T00:00:00.000+0000 
1

這是令人驚訝的,其不完全OP想要的東西唯一的答案(好吧一個非常小的細微之處):

SimpleDateFormat sdf = new SimpleDateFormat("dd-M-yyyy"); 
String formatDate = sdf.format(Calendar.getInstance().getTime()); 
System.out.println(formatDate); 

注意,那只有一個圖案符號M,而不是兩個!所以產量不

25-03-2014

25-3-2014(什麼明確的要求)

相關問題