A
altes-kind
Gast
Hallo Leute,
ich hab folgende Methode:
Jetzt lasse ich diese Methode auf zwei Webservern laufen (jeweils mit den Parametern week=1 und year=2005)
Webserver JRUN4 - Java 1.4:
Hier funktioniert es also wunderbar!!
Webserver JRUN3.1 - Java 1.2 (ich weiß... ist uralt ;-) ):
Hier läuft es falsch! Komisch ist dabei, dass eine Parameteränderung der week-Variable auf das Ergebnis bei dem alten Webserver gar keinen Einfluss hat, die year-Variable wird aber berücksichtigt!
z.B.
Also genau das gleiche wie bei week=1!
Wenn ich aber year ändere...
... wird das berücksichtigt, aber das ist natürlich trotzdem nicht Kalenderwoche 1!
Was läuft das falsch??
Ich bin mit meinem Latein am Ende!!
Danke im Voraus!
altes-kind
ich hab folgende Methode:
Code:
/**
* Das erste und letzte Datum einer Kalenderwoche bestimmen (mit Klasse
* java.util.GregorianCalendar)
*/
public boolean setFirstAndLastDateInWeek(int week, int year) {
boolean result = true;
GregorianCalendar gc1 = new GregorianCalendar();
// Jahr und Kalenderwoche setzen
gc1.set(gc1.YEAR, year);
gc1.set(gc1.WEEK_OF_YEAR, week);
// Erstes Datum in dieser Kalenderwoche
gc1.set(GregorianCalendar.DAY_OF_WEEK, 2);
String y1 = ""+gc1.get(gc1.YEAR);
String m1 = ""+(gc1.get(gc1.MONTH));
String d1 = ""+gc1.get(gc1.DATE);
try {
this.firstDateInWeek = "2000".substring(0, 4 - y1.length()) + y1 +
"00".substring(0, 2 - m1.length()) + m1 +
"00".substring(0, 2 - d1.length()) + d1;
}
catch (Exception e) {
result = false;
System.out.println("Class 'Datum' - Method 'setFirstAndLastDateInWeek()': "+e.toString());
}
// Zweites Datum in dieser Kalenderwoche
gc1.set(GregorianCalendar.DAY_OF_WEEK, 8);
String y2 = ""+gc1.get(gc1.YEAR);
String m2 = ""+(gc1.get(gc1.MONTH));
String d2 = ""+gc1.get(gc1.DATE);
try {
this.lastDateInWeek = "2000".substring(0, 4 - y2.length()) + y2 +
"00".substring(0, 2 - m2.length()) + m2 +
"00".substring(0, 2 - d2.length()) + d2;
}
catch (Exception e) {
result = false;
System.out.println("Class 'Datum' - Method 'setFirstAndLastDateInWeek()': "+e.toString());
}
return result;
}
Jetzt lasse ich diese Methode auf zwei Webservern laufen (jeweils mit den Parametern week=1 und year=2005)
Webserver JRUN4 - Java 1.4:
Code:
setFirstAndLastDateInWeek(1, 2005);
firstDateInWeek: 20050003
lastDateInWeek: 20050009
Webserver JRUN3.1 - Java 1.2 (ich weiß... ist uralt ;-) ):
Code:
setFirstAndLastDateInWeek(1, 2005);
firstDateInWeek: 20050325
lastDateInWeek: 20050401
z.B.
Code:
setFirstAndLastDateInWeek(2, 2005);
firstDateInWeek: 20050325
lastDateInWeek: 20050401
Wenn ich aber year ändere...
Code:
setFirstAndLastDateInWeek(1, 2004);
firstDateInWeek: 20040319
lastDateInWeek: 20040325
Was läuft das falsch??
Ich bin mit meinem Latein am Ende!!
Danke im Voraus!
altes-kind