2012-08-30 115 views
0

顯示日期時出現問題。我做得很好,日期顯示...不好,這是不正確的!Android日期顯示

它說2012/07/30什麼時候應該是2012/08/30。

我在手機中檢查了我的日期,它是正確的。你有什麼主意嗎?

謝謝!

一段代碼:

Calendar c = Calendar.getInstance(); 
String sDate = c.get(Calendar.DAY_OF_MONTH) + "/" + c.get(Calendar.MONTH) + "/" + c.get(Calendar.YEAR); 

view2.setText("" + et.getText() + sDate); 
+1

「我做得很好」 - 顯然不是,但很難說*當我們看不到您的代碼時,您做錯了什麼。請告訴我們一切有關的事 –

+0

你的代碼是'正確',也許你應該看看'Calendar.getInstance();'Quote:「返回:日曆子類實例設置爲默認時區中的當前日期和時間。時區搞砸了? –

回答

1

你爲什麼不使用DateFormat

DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd"); 
view2.setText(dateFormat.format(c.getTime()); 
+0

驚人的伴侶!解決 – Aldridge1991

+0

太棒了。祝你好運 –

0

您可以使用它代替,

SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd"); 
String currentDateandTime = sdf.format(new Date()) 
1

日曆對象不,你的工作期待它。 get(Calendar.MONTH)返回一個表示日期月份的常量,而不是月份的數字。這種微妙的差異可以在這裏看到: java.util.calendar

正如你所看到的,常量反映一個從零開始的序列,以一月,這樣就可以使用常量作爲索引成月爲查找一個數組。

出於您的目的,您可以將返回的int加1,但您可能想要在java.text中查看SimpleDateFormatThis article提供了一個簡要的概述,讓你開始。

祝你好運!