# 3 Monate addieren



## Dido001 (22. Nov 2010)

Hallo, 

ich muss zur Datumsangaben immer 3 Monate dazu addieren. 
Beispiel: heute ist 22.11.2010 , es muss aber 22.02.2011 stehen. 
Wie kann ich es tun? 

Vielen Dank,


----------



## sicLotus (22. Nov 2010)

Hätteste mal die Suche benutzt:
http://www.java-forum.org/java-basics-anfaenger-themen/32140-datum-tage-addieren.html


----------



## ARadauer (22. Nov 2010)

```
DateFormat df = new SimpleDateFormat("dd.MM.yyyy");       
     GregorianCalendar cal = new GregorianCalendar(2010, Calendar.NOVEMBER, 22);
     cal.add(Calendar.MONTH, 3);
     System.out.println(df.format(cal.getTime()));
```


----------



## ARadauer (22. Nov 2010)

ARadauer hat gesagt.:


> ```
> DateFormat df = new SimpleDateFormat("dd.MM.yyyy");
> GregorianCalendar cal = new GregorianCalendar(2010, Calendar.NOVEMBER, 22);
> cal.add(Calendar.MONTH, 3);
> ...



beim Calendar immer mit den Monaten aufpassen!


```
/**
     * Value of the {@link #MONTH} field indicating the
     * first month of the year in the Gregorian and Julian calendars.
     */
    public final static int JANUARY = 0;

    /**
     * Value of the {@link #MONTH} field indicating the
     * second month of the year in the Gregorian and Julian calendars.
     */
    public final static int FEBRUARY = 1;
```
???:L:wuerg:


----------



## Dido001 (22. Nov 2010)

OK, ich kann zwar 90 Tage addieren aber es ist immer noch nicht richtig, weil manche Monate 31 Tage haben.


----------



## Dido001 (22. Nov 2010)

Vielen Dank für die schnelle antwort


----------



## sicLotus (22. Nov 2010)

Das macht der Kalendar normalerweise von alleine richtig.. oO
Zeig mal deinen Code..


----------



## Andi_CH (22. Nov 2010)

sicLotus hat gesagt.:


> Das macht der Kalendar normalerweise von alleine richtig.. oO
> Zeig mal deinen Code..



Hm ich erwarte schon, dass es ein anderes Resultat gibt, wenn ich 90 Tage oder 3 Monate addiere... ausprobiert habe ich es nicht ....


----------



## sicLotus (22. Nov 2010)

Andi_CH hat gesagt.:


> Hm ich erwarte schon, dass es ein anderes Resultat gibt, wenn ich 90 Tage oder 3 Monate addiere... ausprobiert habe ich es nicht ....



Ja na klar, aber es kommt halt drauf an was er haben will!
Addiert er 90 Tage, dann zaehlt der Kalendar exakt 90 Tage weit, bei 3 Monaten zaehlt der Kalendar halt 3 Monate dazu, und landet dann wohl beim selben Tag, also:
22.11.2010 +3Monate -> 22.2.2011
Das wäre meine Vermutung


----------



## Dido001 (22. Nov 2010)

Habs hinbekommen, ich wollte exakt 3 Monate haben. Ich wusste "Monats" addition nicht. Ich dachte es gibt nur "Tag" addition.
ich wusste nur "Calendar.DAY_OF_MONTH"
Vielen Dank


----------



## Andi_CH (22. Nov 2010)

Super, auch wenn ich es geahnt habe, dass es so ist - eine Bestätigung ist immer gut ;-)


----------

