Jahresüberschlag bei Gregorian Calendar

Status
Nicht offen für weitere Antworten.

Azrahel

Bekanntes Mitglied
Hallo erstmal

ich bin mal wieder über ne Spitzfindigkeit gestolpert:
Code:
    public int getDateInKW(int year, int week, int day){
                GregorianCalender cal = new GregorianCalender();
    	cal.set(Calendar.YEAR, year);
    	cal.set(Calendar.WEEK_OF_YEAR, week);
    	cal.set(Calendar.DAY_OF_WEEK, day);
    	int date = cal.get(Calendar.DATE);
    	String datezero="";
    	if(date<=9)
    		datezero="0";
    	int month = cal.get(Calendar.MONTH)+1;
    	String monthzero="";
    	if(month<=9)
    		monthzero="0";
    	//int yyyy=cal.get(Calendar.MONTH);
    	return Integer.parseInt(year+monthzero+month+datezero+date);
    	//return Integer.parseInt(yyyy+monthzero+month+datezero+date);
    }

year=Jahr
week=Kalenderwoche
day=Wochentag (in meinem Fall 1 für den Sonntag)


funktioniert soweit, bis ich in den Dezember komme... und der erste Januar in der letzten Kalenderwoche des letzten Jahres ist. Weil den Monat bekomme ich dann richtig als den 01(Januar), ebenso der Tag. Da ja aber ein neues Jahr begonnen hat kann ich nicht mehr mit year ne Rückgabe machen, sondern müßte ja den Code mit den auskommentierten Zeilen ergänzen. Hab ich auch versucht, nur bekomme ich dann als Wert für yyyy stets 0 heraus.

Kann mir da mal jemand nen Tip geben?

Vielleicht weiss auch grad jemand wie ich dem Gregorian Calender beibringe die Woche nicht Sonntags sondern Montags zu beginnen, das würd mir echt mega weiterhelfen...

Vielen Dank schonmal vorab :)
 

Jockel

Top Contributor
Azrahel hat gesagt.:
Vielleicht weiss auch grad jemand wie ich dem Gregorian Calender beibringe die Woche nicht Sonntags sondern Montags zu beginnen, das würd mir echt mega weiterhelfen...
Macht setFirstDayOfWeek nicht genau das, was du brauchst!?
 

Azrahel

Bekanntes Mitglied
Danke erstmal fürs Antworten

Hmm, dacht ich auch zuerst, aber ich muss immer noch mit Tag 2 für den Montag und Tag 1 für den Sonntag arbeiten. Dafür bekomme ich wenn ich setFirstDayOfWeek benutze fürs Jahr mit cal.get(Calendar.YEAR) immer 5 statt 0 raus :bahnhof:
 

Azrahel

Bekanntes Mitglied
Also warum ich fürs Jahr so komische Dinge rausbekomme wurd mir schlagartig klar als ich heut Morgen wieder in den Code geguckt hab.

Mit der Zeile int
Code:
yyyy=cal.get(Calendar.MONTH)
les ich nämlich garantiert kein Datum aus. Wer lesen kann ist klar im Vorteil :oops:

Aber das mit
Code:
setFirstDayOfWeek(Calendar.MONDAY)
hab ich jetzt extra nochmal durchprobiert, sogar 2 mal weil ich mir so ne Schlappe in einem Tread nicht 2 mal geben will, und es macht echt nicht was ich vermuten würd was es machen soll.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
A Datentypen Gregorian Calendar - 2 Daten sind gleich?? Allgemeine Java-Themen 3
L Gregorian Calender falsches Datum Allgemeine Java-Themen 2
G Tagesdifferenz zw. 2 Gregorian Objekten Allgemeine Java-Themen 14
torresbig Klasse mit extends Calendar über Methoden ändern (Hirnblockade) Allgemeine Java-Themen 7
C Was passt hier nicht bei der Calendar-Class Allgemeine Java-Themen 2
pkm Frage zur Präzision von Calendar.WEEK_OF_YEAR Allgemeine Java-Themen 12
missy72 Methoden Calendar/Date Countdown Allgemeine Java-Themen 9
F Überprüfen ob es Überschneidungen von Uhrzeiten (vom Typ Calendar) gibt Allgemeine Java-Themen 10
S Calendar vergleich Allgemeine Java-Themen 2
K Calendar Allgemeine Java-Themen 2
G Calendar/Date arithmetic Allgemeine Java-Themen 3
Mike90 Calendar mit EDT Timezone Allgemeine Java-Themen 4
U Richfaces Calendar Auto Korrektur Allgemeine Java-Themen 2
S Calendar, WeekOfYear Allgemeine Java-Themen 2
-MacNuke- Calendar erst nach getTime() gesetzt? Allgemeine Java-Themen 4
V Calendar monatstage herausfinden? Allgemeine Java-Themen 2
C Calendar bzw. GregorianCalendar Klasse Allgemeine Java-Themen 12
Zed Calendar über Kalenderwochen iterieren Allgemeine Java-Themen 3
J Calendar gibt falsche Wochenanzahl zurück Allgemeine Java-Themen 3
T Suche den großen Calendar Thread ! Allgemeine Java-Themen 2
J Datentyp "Calendar" umwandeln und ausgeben können Allgemeine Java-Themen 36
V Date und Calendar . Allgemeine Java-Themen 3
I Calendar Allgemeine Java-Themen 2
M Bug bei Calendar.add? Allgemeine Java-Themen 5
J (JAVA) Calendar-Objekt formatiert ausgeben Allgemeine Java-Themen 9
G java.sql.Time Calendar-Objekt zuweisen Allgemeine Java-Themen 2
D Datum und Zeit - Date, Calendar oder GregorianCalender ? Allgemeine Java-Themen 13
W Bereichsüberschreitung bei Klasse Calendar Allgemeine Java-Themen 3
N Unterschied Calendar und GregorianCalendar Allgemeine Java-Themen 9
T Probleme mit Date und Calendar Allgemeine Java-Themen 7

Ähnliche Java Themen

Neue Themen


Oben