GregorianCalendar le jour ouvrable suivant
Hello,
Je tente de récupérer le jour suivant ouvrable pour une date donnée
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
|
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
public class DateTest {
public static Date appendDay(Date aDate) {
GregorianCalendar calendar = new GregorianCalendar();
calendar.setTime(aDate);
int offset = 1;
int offsetSaturday = 2;
int offsetFriday = 3;
if (calendar.get(Calendar.DAY_OF_WEEK) == Calendar.FRIDAY) {
calendar.add(Calendar.DATE, offsetFriday);
} else if (calendar.get(Calendar.DAY_OF_WEEK) == Calendar.SATURDAY) {
calendar.add(Calendar.DATE, offsetSaturday);
} else {
calendar.add(Calendar.DATE, offset);
}
return calendar.getTime();
}
public static void main (String [] args) {
try {
SimpleDateFormat format = new SimpleDateFormat("dd.mm.yyyy");
Date d1 = format.parse("28.09.2009");
Date d2 = appendDay(d1);
System.out.println(format.format(d2));
} catch (Exception ex) {
System.out.println("Exception : " + ex);
}
}
} |
Le problème se situe au niveau de calendar.get(Calendar.DAY_OF_WEEK) == Calendar.FRIDAY) qui ne donne pas une condition valide et ne retourne donc la date suivante :
29.09.2009
Comment donc récupérer le bon jour de la semaine ?