2012-08-07 28 views
0

我创建了一个Android应用程序,我想在屏幕上显示当前日期。我使用此代码:如何显示当前日期? Android应用程序

Date date = new Date(0); 
java.text.DateFormat dateFormat = android.text.format.DateFormat.getDateFormat(getApplicationContext()); 
text.setText("Time: " + dateFormat.format(date));` 

但是,此代码显示我日期“1.1.1970”。

如何显示当前日期?

回答

0

new Date()足够,否则你得到的日期01.01.1970 00:00:00 0之后数秒如果你调用new Date(0)

+0

Calendar.getInstance更好 – Joset 2012-08-07 05:53:56

+1

是的,但那不会给他看他的错误。 ...现在我可以争辩说,乔达时间比使用日历更好 – tagtraeumer 2012-08-07 05:54:47

1
SimpleDateFormat dfDate = new SimpleDateFormat("yyyy-MM-dd"); 
Calendar c = Calendar.getInstance(); 
String date = dfDate.format(c.getTime()); 
System.out.println("Date is "+date); 

结果将是========> 2012-08 -07

0

请勿使用新日期(0)。该参数是自该时代开始的时间,即1970年1月1日。只需使用新的Date()。

2

使用

text.setText(new SimpleDateFormat("yyyy-MM-dd").format(Calendar.getInstance().getTime()); 
1

只需卸下0,所以替换此:此Date date = new Date(0);

Android DocumentationDate date = new Date();

使用指定的毫秒初始化此日期实例值。 该值是1970年1月1日以来的毫秒数。

既然你在0值传递,它正在采取上述日期和添加0毫秒到它,因此为什么你得到了1.1.1970日期的理由。

1

要显示在屏幕上的当前日期做..

String s = new SimpleDateFormat("dd-MM-YYYY").format(new Date());

现在在屏幕上显示的String

0

确保您导入“java.util.Date;”而不是“java.sql.Date;”否则你将无法通过任何参数。