在Android中获取年份,月份和date

我正在尝试使用下面的代码来获得今天的年份,月份和date。

Calendar calendar = Calendar.getInstance(); int thisYear = calendar.get(Calendar.YEAR); Log.d(TAG, "# thisYear : " + thisYear); int thisMonth = calendar.get(Calendar.MONTH); Log.d(TAG, "@ thisMonth : " + thisMonth); int thisDay = calendar.get(Calendar.DAY_OF_MONTH); Log.d(TAG, "$ thisDay : " + thisDay); 

但是不是今天的date,“2012年度1月份和28date”。 我做错了什么?

Solutions Collecting From Web of "在Android中获取年份,月份和date"

假设这是在模拟器上运行,我会是正确的吗? 如果是这样,请正确设置模拟器date,并且它应该是正确的。

从内存来看,这个代码应该做你期望的。

 Calendar calendar = Calendar.getInstance(TimeZone.getDefault()); calendar.get(Calendar.YEAR) 

月份从零开始,因此您必须在给定月份中添加1以显示我们熟悉的月份数字。

 int thisMonth = calendar.get(Calendar.MONTH); Log.d(TAG, "@ thisMonth : " + (thisMonth+1)); 

这将显示当前月份从1开始。

我试过你的代码,它正在给出正确的输出。 您应该尝试检查您正在使用此代码的模拟器/手机中的时间

根据getInstance文档,默认设置为当前date和时间。

尝试使用:

 Date dt = new Date(); dt.getYear(); dt.getMonth(); dt.getDay(); 

并看看你是否得到相同的结果。 如果是这样,您的系统date可能不同步。 查看Date类文档以获取更多详细信息:

这给你的android系统的时间和date,所以首先检查它。