Android日历getFirstDayOfWeek错误

时间:2017-05-07 21:06:22

标签: java android java-calendar

我想得到一周的第一天,但​​我有一个奇怪的错误。 如果我使用此代码:

Calendar cal = Calendar.getInstance();
cal.set(2017, 0, 1);

cal.set(Calendar.DAY_OF_WEEK, cal.getFirstDayOfWeek());
DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL, Locale.getDefault());
Log.d(TAG, "Date: " + dateFormat.format(cal.getTime()));

我的日志显示错误的日期:D/Activity: Date: lundi 2 janvier 2017

但是如果我像这样使用getTime()方法:

Calendar cal = Calendar.getInstance();
cal.set(2017, 0, 1);
cal.getTime(); // Here

cal.set(Calendar.DAY_OF_WEEK, cal.getFirstDayOfWeek());
DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.FULL, Locale.getDefault());
Log.d(TAG, "Date: " + dateFormat.format(cal.getTime()));

我的日志显示正确的日期:D/Activity: Date: lundi 26 décembre 2016

我的手机使用法语,所以我的星期一是星期一开始的。

有人知道为什么吗?

0 个答案:

没有答案