1

我有以下代码:

Log.e("year = ",eventiCompleti.get(i).year);
Log.e("month = ",eventiCompleti.get(i).month);
Log.e("day = ",eventiCompleti.get(i).day);
Log.e("hour = ",eventiCompleti.get(i).hour);

TimeZone MyTimezone = TimeZone.getDefault();
Calendar calendar = new GregorianCalendar(MyTimezone);                              
calendar.set(Integer.parseInt(eventiCompleti.get(i).year),Integer.parseInt( eventiCompleti.get(i).month),Integer.parseInt( eventiCompleti.get(i).day),0,0,0);
String month_name=calendar.getDisplayName(Calendar.MONTH, Calendar.LONG, Locale.getDefault());//Locale.US);
String day_name=calendar.getDisplayName(Calendar.DAY_OF_WEEK, Calendar.LONG, Locale.getDefault());

Log.e("day of the week = ",day_name);

好吧,这是输出:

06-30 21:33:55.828: E/year =(11254): 2013
06-30 21:33:55.828: E/month =(11254): 08
06-30 21:33:55.828: E/day =(11254): 07
06-30 21:33:55.828: E/hour =(11254): 18:00
06-30 21:33:55.828: E/day of the week =(11254): Saturday

显然,2013 年 8 月 7 日不是星期六。

请问我做错了什么???

谢谢!!!

4

1 回答 1

2

您假设该月从 1 开始。事实并非如此。在日历中,它从一月=0 开始。

因此,将您的代码更改为:

eventiCompleti.get(i).month-1

于 2013-06-30T19:56:20.740 回答