Différence entre deux dates (en mois)

Signaler
Messages postés
300
Date d'inscription
jeudi 12 juin 2003
Statut
Membre
Dernière intervention
9 juillet 2008
-
boumarsel
Messages postés
300
Date d'inscription
jeudi 12 juin 2003
Statut
Membre
Dernière intervention
9 juillet 2008
-
Bonjour,


je cherche à calculer la différence en mois entre deux dates.


Date datefin = new Date();
Date datedebut = dateFormat.parse(tfDateFin.getText());
long lDiffMois;

alors je cherche une fonction genre : lDiffMois = getDiffEnMois(datefin, datedebut);

Voila g éssayé de détailler au max pour obtenir une réponse éxacte.
Merci d'avance

2 réponses

Messages postés
492
Date d'inscription
vendredi 30 janvier 2004
Statut
Membre
Dernière intervention
16 mai 2007
9
Salut
Tu peux tout simplement faire un truc du genre (il faut peut-etre ajuster le temps si cela ne correspond pas):
Date result = new Date(datefin.getTime() - datedebut.getTime());
Calendar cal = new Calendar();
cal.setTime(result);
int diffMois = cal.MONTH;

A++
Messages postés
300
Date d'inscription
jeudi 12 juin 2003
Statut
Membre
Dernière intervention
9 juillet 2008
1
ça ne marche pas,
meme avec ce code de test il me donne un résultat érroné

Date datefin2 = new Date();

Calendar cal2 = Calendar.getInstance();

cal2.setTime(datefin2);

System.out.println(dateFormat.format(datefin2));

System.out.println(""+cal2.MONTH);

Le résultat est :
07/09/2006
2

Normalement il doit m'afficher 09 non?