Différence entre deux dates (en mois)

Signaler
Messages postés
298
Date d'inscription
jeudi 12 juin 2003
Statut
Membre
Dernière intervention
9 juillet 2008
-
Messages postés
298
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
12
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
298
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?