协慌网

登录 贡献 社区

获取 Android 上的当前时间和日期

如何在 Android 应用中获取当前时间和日期?

答案

你可以使用:

import java.util.Calendar

Date currentTime = Calendar.getInstance().getTime();

日历中有很多常量可供您使用。

编辑:
检查Calendar 类文档

你可以( 但不再应该 - 见下文!)使用android.text.format.Time

Time now = new Time();
now.setToNow();

从上面链接的参考:

Time 类是 java.util.Calendar 和 java.util.GregorianCalendar 类的更快替代品。 Time 类的实例表示以第二精度指定的时刻。


注 1:我写这个答案已有好几年了,它是关于一个旧的,特定于 Android 的,现已弃用的类。谷歌现在 “他的班级有很多问题,建议改用GregorianCalendar ”。


注意 2:尽管Time类具有toMillis(ignoreDaylightSavings)方法,但这只是方便传递给期望时间的方法(以毫秒为单位)。时间值只精确到一秒 ; 毫秒部分总是000 。如果你在一个循环中

Time time = new Time();   time.setToNow();
Log.d("TIME TEST", Long.toString(time.toMillis(false)));
... do something that takes more than one millisecond, but less than one second ...

结果序列将重复相同的值,例如1410543204000 ,直到下一秒开始,此时1410543205000将开始重复。

如果要以特定模式获取日期和时间,可以使用以下内容:

SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd_HHmmss");
String currentDateandTime = sdf.format(new Date());