Android:将类型日期转换为日历时出错

时间:2017-05-26 17:03:03

标签: android

我正在使用领域保存日期,但需要使用日期的日期和月份以供日后使用,因此我将使用以下方法将类型日期转换为日历:

 public static Calendar toCalendar(Date date){
    Calendar cal = Calendar.getInstance();
    cal.setTime(date);
    return cal;
}

然后on onCreate of a fragment:

Date testDate = new Date();
CharSequence s  = DateFormat.format("MMMM d, yyyy ", testDate.getTime());
Log.d("Date", String.valueOf(s));
// This prints May 26, 2017 

Calendar testCalendar = toCalendar(testDate);
Log.d("CALENDAR DAY TEST", String.valueOf(testCalendar.DAY_OF_MONTH));
// This prints 5, MONTH prints 2. Rather the expected 26 & 5.

testCalendar的DAY_OF_MONTH和MONTH方法将第5天和第5个月作为第2个而不是第26个和第5个返回。

1 个答案:

答案 0 :(得分:0)

这些是用于tellling Calendar的静态int用于所需的数据类型。

Calendar calendar = Calendar.getInstance();
int day = calendar.get(Calendar.DAY_OF_MONTH);