我正在爲我的應用程序開發本地日曆。但每月重複事件(星期幾)是個問題。獲取月份的第三個星期五
當我創建一個事件開始16-9-2016(16 SEP 2016 FRIDAY)
並重復每個月的第三個星期五。但下個月它會在第二個 週五14-10-2016創建(這是問題)。下個月它將在第三個星期五。
我的代碼是
public Date nthWeekdayOfMonth(int dayOfWeek, int month, int year, int week, TimeZone timeZone) {
Calendar calendar = Calendar.getInstance();
calendar.setTimeZone(timeZone);
calendar.set(Calendar.DAY_OF_WEEK, dayOfWeek);
calendar.set(Calendar.WEEK_OF_MONTH, week);
calendar.set(Calendar.MONTH, month);
calendar.set(Calendar.YEAR, year);
return calendar.getTime();
}
我知道這個問題。但我不知道如何解決它..有什麼方法可以解決它嗎?
提示:如果可能,請使用Java8 Date/Time Apis而不是好日曆。日曆只是s ***的大時間。 – GhostCat
@GhostCat對不起,我們的系統使用Java7。有沒有辦法通過使用Java7日曆來解決它 –
如果你在Java7上,你可以試試[Joda Time](http://www.joda.org/joda-time/)然後[這個答案](http: //stackoverflow.com/questions/20527998/get-all-fridays-in-a-date-range-in-java)包含一個示例代碼。 – DVarga