Méthode pour calculer efficacement la différence de date dans c #
] Dans divers scénarios de programmation, la détermination de la différence du nombre de jours entre deux dates est une tâche commune. En C #, il existe plusieurs façons de calculer cette différence, notamment en utilisant la classe date
et la structure timepan
.
Utiliser la classe de date et la structure de temps de TimesPan
] Un moyen simple de calculer la différence du nombre de jours entre deux dates consiste à utiliser la classe date
pour représenter deux dates, puis les soustraire pour obtenir un objet timeSpan
:
DateTime startDate = new DateTime(2023, 1, 1);
DateTime endDate = new DateTime(2023, 3, 8);
TimeSpan days = endDate - startDate;
Console.WriteLine(days.TotalDays); // 输出:66
Ce code utilise l'attribut TotalDays
de l'objet timeSpan
pour récupérer le nombre de jours entre la date de début et la date de fin. Le résultat dans cet exemple est 66, c'est-à-dire le nombre de jours du 1er janvier au 8 mars 2023.
Utilisez la classe de mathématiques
] Une autre façon de calculer la différence du nombre de jours entre les dates est d'utiliser la méthode math.abs ()
pour trouver la différence absolue entre deux valeurs de date exprimées dans une tick:
long startDateTicks = new DateTime(2023, 1, 1).Ticks;
long endDateTicks = new DateTime(2023, 3, 8).Ticks;
long days = Math.Abs(endDateTicks - startDateTicks) / TimeSpan.TicksPerDay;
Console.WriteLine(days); // 输出:66
Cette méthode repose sur la propriété ticks
de la classe datetime
, qui renvoie le nombre de tiques depuis le début du calendrier grégorien (100 nanoseconde intervalle). En divisant cette différence par le nombre de tiques de chaque jour, nous obtenons le nombre de jours entre les deux dates.
Avis:
Quelle que soit la méthode que vous choisissez, assurez-vous que la valeur de date est valide et représente la date du calendrier grégorien. Envisagez également de gérer les cas où la date de début est ultérieure à la date de fin.
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3