Bonjour,
Je souhaite effectuer une soustraction entre deux dates dont les formats sont différents...
Je m'explique : ma première date est de la forme : "yyyy-MM-dd HH:mm"
et ma seconde : "HH:mm",
et je souhaite obtenir un résultat de la forme "yyyy-MM-dd HH:mm".
J'ai tout d'abord essayé de traiter ces deux dates comme des String, mais c'est compliquer car il y a beaucoup de cas particulers lors de la différence, par exemple :
2008-01-01 00:00 - 00:15 = 2007-12-31 23:45
J'ai donc ensuite essayé la méthode suivante :
SimpleDateFormat sdf1= new SimpleDateFormat("yyyy-MM-dd HH:mm");
SimpleDateFormat sdf2 = new SimpleDateFormat("HH:mm");
String Date1 = "2008-01-01 00:00";
String Date2 = 00:15;
long resultat = (sdf1.parse(Date1)).getTime()-(sdf2.parse(Date2)).getTime();
String sResultat = String.valueOf(resultat);
sResultat = resultat%31104000
+(resultat%31104000)/2592000
+((resultat%31104000)%2592000)/86400+" "
+(((resultat%31104000)%2592000)%86400)/3600+":"
+((((resultat%31104000)%2592000)%86400)%3600)/6;
System.out.println(sResultat );
Mais le resultat affiché ne correspond pas du tout à ce que j'attend...
Quelqu'un aurait-il une piste pour me permettre d'améliorer ce code?
Merci beaucoup pour vos réponses.