2012-01-19 118 views
-1

我想將SimpleDateFormat轉換爲字符串,但結果不正確。將SimpleDateFormat轉換爲字符串問題

Calendar cal = Calendar.getInstance(); 
SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy"); 
Log.d("current date",dateFormat.format(cal.getTime())); 
cal.add(Calendar.YEAR,-3); 
Log.d("3 years previous date",dateFormat.format(cal.getTime())); 

String valnow = dateFormat.format(new Date()); 

輸出:

01-19 05:34:52.148: DEBUG/current date(556): 19/01/2012 
01-19 05:34:52.148: DEBUG/3 years previous date(556): 19/01/2009 

但是​​值= 19/01/2012

請問有人可以告訴我怎麼做?如果你有任何經驗的例子,這將是一個真正的幫助!

+0

更換

String valnow = dateFormat.format(new Date()); 

你能解釋一下什麼是你所面臨的問題。您正在給dateFormat.format(新日期()),它給出當前日期 – aNi

+1

您的預期輸出是什麼? – mcfinnigan

+0

我希望能得到String valnow = 19/01/2009.但它的問題是valnow = 19/01/2012 – TRS

回答

7

嘗試用

String valnow = dateFormat.format(cal.getTime()); 
1
long lo = System.currentTimeMillis(); 
// long lo = Long.parseLong(date); 
    Log.e("Try", "Check "+lo); 

    SimpleDateFormat formatter = new SimpleDateFormat("EEEE, MMMM d 'at' hh:mm a 'in the year' yyyy G"); 
    String formattedDateString = formatter.format(lo); 
    Log.e("Try", "Check Ti`enter code here`me Date "+formattedDateString); 
-1
DateFormat.format("MM/dd/yy", System.currentTimeMillis()).toString(); 
+0

檢查方法簽名 –

+0

這個方法不存在,查http://developer.android.com/reference/ java/text/DateFormat.html – Marmoy

+0

有些人低估了我的回答,我可以知道爲什麼嗎? @VIdre檢查此>> http://developer.android.com/reference/android/text/format/DateFormat.html – AAnkit