Calendar holidays

  • Themenstarter Themenstarter Jpocdge
  • Beginndatum Beginndatum
J

Jpocdge

Gast
Hi,

Bin grad dabei zwischen zwei Datum- Angaben die Differenzen zu bilden ohne Wochenenden und festgelegte Feiertage. Die Wochenenden hab ich soweit hinbekommen nun fehlen nur die Feiertage. Folgender Textschnipsel:
Java:
protected int computeDays (Calendar cal, Calender, scal) {
int days =0;
while (cal.before(scal)){
switch (cal.get(Calendar.DAY_OF_WEEK)) {
default:
days++;
break;
case Calendar.SATURDAY
case Calendar.SUNDAY
// hier der zusatz für feiertag
// z.b case ("31.12.2012")
break;
}
cal.add(Calendar.DAY_OF_WEEK,1);
}
return days;
}
 
Steht doch da 🙂
Er möchte die Zahl der Werktage zwischen 2 Datumwerten ausrechnen, dazu gibt er Anfangs und Enddatum an und dann geht eine Schleife Tag für Tag durch, bei jedem Sa + So wird Aufaddieren überpsrungen.

Der TO möchte jetzt ein Case für seine switch-Anweisung für Feiertage.

Das Problem ist, das geht nicht so einfach, Calendar hat keine Feiertage drin. Und außer 1.5. 3.10. 25/26.12. und 1.1. sind alle anderen Feiertage beweglich. Du wirst dir ein paar Variablen zulegen müssen, welche die Datumswerte der Feiertage aufnehmen und dann darauf prüfen müssen. Glaube nicht, dass es im switch dann geht.

Evtl gehts auch anders, nur kA wie.
 
Hallo Jpocdge,

die Feiertage (FT) würde ich in einer separaten Tabelle hinterlegen. Danach prüfst Du innerhalb der Schleife Tag für Tag durch, ob das jeweilige Datum ein FT ist und ziehst die Summe der Tage am Ende ab.

Grüße
OSBI_Fan

OSBI = Open Source Business Intelligence
 

Zurück
Oben