GregorianCalendar

  • Themenstarter Themenstarter mnaji
  • Beginndatum Beginndatum
M

mnaji

Die erste zwei java-Fragmente haben wirklich merkwürdige
und falsche Ausgaben. Kann jemand helfen;
danke sehr. Mohamed

Email = MohamedNaji@web.de

Web = http://www21.brinkster.com/mnaji




GregorianCalendar d = new GregorianCalendar(1582, 9, 1);


for (int i=1; i<30; i++) {
int jjj = d.get(Calendar.YEAR);

int mmm = d.get(Calendar.MONTH)+1;

int ddd = d.get(Calendar.DAY_OF_MONTH);

System.out.println(ddd+"."+mmm+"."+jjj);

d = new GregorianCalendar(1582, 9, (1+i));
}


//Ausgabe mit Fehler siehe Falsch

1.10.1582 // richtig
2.10.1582 // richtig
3.10.1582 // richtig
4.10.1582 // richtig
15.10.1582 // richtig
16.10.1582 // richtig
17.10.1582 // richtig
18.10.1582 // richtig
19.10.1582 // richtig
20.10.1582 // richtig
21.10.1582 // richtig
22.10.1582 // richtig
23.10.1582 // richtig
24.10.1582 // richtig
15.10.1582 // Falsch
16.10.1582 // richtig
17.10.1582 // richtig
18.10.1582 // richtig
19.10.1582 // richtig
20.10.1582 // richtig
21.10.1582 // richtig
22.10.1582 // richtig
23.10.1582 // richtig
24.10.1582 // richtig
25.10.1582 // richtig
26.10.1582 // richtig
27.10.1582 // richtig
28.10.1582 // richtig
29.10.1582 // richtig


d = new GregorianCalendar(622, 6, (16+(350720)));

for (int i=1; i<30; i++) {
int jjj = d.get(Calendar.YEAR);

int mmm = d.get(Calendar.MONTH)+1;

int ddd = d.get(Calendar.DAY_OF_MONTH);

System.out.println(ddd+"."+mmm+"."+jjj);

d = new GregorianCalendar(622, 6, (16+350720+i));
}


//Ausgabe mit Fehler siehe Falsch

4.10.1582 // richtig
15.10.1582 // richtig
16.10.1582 // richtig
17.10.1582 // richtig
15.10.1582 // Falsch
16.10.1582 // richtig
17.10.1582 // richtig
18.10.1582 // richtig
19.10.1582 // richtig
20.10.1582 // richtig
21.10.1582 // richtig
22.10.1582 // richtig
23.10.1582 // richtig
24.10.1582 // richtig
25.10.1582 // richtig
26.10.1582 // richtig
27.10.1582 // richtig
28.10.1582 // richtig
29.10.1582 // richtig
30.10.1582 // richtig
31.10.1582 // richtig
1.11.1582 // richtig
2.11.1582 // richtig
3.11.1582 // richtig
4.11.1582 // richtig
5.11.1582 // richtig
6.11.1582 // richtig
7.11.1582 // richtig
8.11.1582 // richtig



d = new GregorianCalendar(622, 6, (16+(350720)));

for (int i=1; i<30; i++) {
int jjj = d.get(Calendar.YEAR);

int mmm = d.get(Calendar.MONTH)+1;

int ddd = d.get(Calendar.DAY_OF_MONTH);

System.out.println(ddd+"."+mmm+"."+jjj);

d.add(Calendar.DAY_OF_MONTH, 1);

}



//Ausgabe alles Richtig

4.10.1582 // richtig
15.10.1582 // richtig
16.10.1582 // richtig
17.10.1582 // richtig
18.10.1582 // richtig
19.10.1582 // richtig
20.10.1582 // richtig
21.10.1582 // richtig
22.10.1582 // richtig
23.10.1582 // richtig
24.10.1582 // richtig
25.10.1582 // richtig
26.10.1582 // richtig
27.10.1582 // richtig
28.10.1582 // richtig
29.10.1582 // richtig
30.10.1582 // richtig
31.10.1582 // richtig
1.11.1582 // richtig
2.11.1582 // richtig
3.11.1582 // richtig
4.11.1582 // richtig
5.11.1582 // richtig
6.11.1582 // richtig
7.11.1582 // richtig
8.11.1582 // richtig
9.11.1582 // richtig
10.11.1582 // richtig
11.11.1582 // richtig
 
Hallo hallo,

also ich weiss nicht genau, was Du jetzt mit richtig oder falsch meinst. Soweit ich das sehe, sind alle Formate und Tage gültige Werte als Datumstyp. An dem Jahr allerdings kann ich erkennen, dass Du Dich fast in der Zeit des persischen Kalenders befindest. Das heutige Gregorianische Datum ist 15. April 2007. Das heutige persische Datum ist 26. Januar 1386. 1586 liegt zumindest näher an 1386 als an 2007. Daher ist meine Vermutung, Du rechnest mit dem falschen Kalendar. ...kann das sein?

grüße phil
 
Mit
>24.10.1582 // richtig
>15.10.1582 // Falsch

meine ich auf den 24.10.1582 müsste eigentlich den 25.10.1582 (nicht 15.10.1582) folgen

Mit
>17.10.1582 // richtig
>15.10.1582 // Falsch

meine ich auf den 17.10.1582 müsste eigentlich den 18.10.1582 (nicht 15.10.1582) folgen



ich befinde mich NICHT in der Zeit des persischen Kalenders, sondern in der Zeit der islamischen Zeitrechnung (16.7.622 A.C. ist 1.1.1 hegri bzw. islamisch)
 
Zurück