Comment puis-je calculer la différence de date entre deux dates en années ?
Par exemple : (Datetime.Now.Today() - 11/03/2007)
en années.
Comment puis-je calculer la différence de date entre deux dates en années ?
Par exemple : (Datetime.Now.Today() - 11/03/2007)
en années.
J'ai écrit une implémentation qui fonctionne correctement avec des dates à exactement un an d'intervalle.
Cependant, il ne traite pas gracieusement les intervalles de temps négatifs, contrairement à l'autre algorithme. Il n'utilise pas non plus sa propre date arithmétique, au lieu de compter sur la bibliothèque standard pour cela.
Donc sans plus tarder, voici le code :
DateTime zeroTime = new DateTime(1, 1, 1);
DateTime a = new DateTime(2007, 1, 1);
DateTime b = new DateTime(2008, 1, 1);
TimeSpan span = b - a;
// Because we start at year 1 for the Gregorian
// calendar, we must subtract a year here.
int years = (zeroTime + span).Year - 1;
// 1, where my other algorithm resulted in 0.
Console.WriteLine("Yrs elapsed: " + years);
Nous avons dû coder un chèque pour établir si la différence entre deux dates, une date de début et une date de fin était supérieure à 2 ans.
Grâce aux conseils ci-dessus, il a été fait comme suit :
DateTime StartDate = Convert.ToDateTime("01/01/2012");
DateTime EndDate = Convert.ToDateTime("01/01/2014");
DateTime TwoYears = StartDate.AddYears(2);
if EndDate > TwoYears .....
var totalYears =
(DateTime.Today - new DateTime(2007, 03, 11)).TotalDays
/ 365.2425;
Jours moyens au départ de Wikipedia/Leap_year.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.