Methode zur effizienten Berechnung des Datumsunterschieds in C#
] In verschiedenen Programmierszenarien ist es eine gemeinsame Aufgabe, den Unterschied in der Anzahl der Tage zwischen zwei Daten zu bestimmen. In C#gibt es verschiedene Möglichkeiten, diesen Unterschied zu berechnen, einschließlich der Verwendung der Date
-Klasse und der Timesspan
Struktur.
Verwenden Sie Datum der Klasse und Zeitspan Struktur
] Ein einfacher Weg, um den Unterschied in der Anzahl der Tage zwischen zwei Daten zu berechnen, besteht darin, die Date
-Klasse zu verwenden, um zwei Daten darzustellen und sie dann zu subtrahieren, um ein timesspan
Objekt:
DateTime startDate = new DateTime(2023, 1, 1);
DateTime endDate = new DateTime(2023, 3, 8);
TimeSpan days = endDate - startDate;
Console.WriteLine(days.TotalDays); // 输出:66
Dieser Code verwendet das Attribut des
timesdays timsspan
Objekt, die Anzahl der Tage zwischen dem Startdatum und dem Enddatum abzurufen. Das Ergebnis in diesem Beispiel ist 66, d. H. Die Anzahl der Tage vom 1. Januar bis 8. März 2023.
Verwenden Sie die mathematische Klasse
] Eine andere Möglichkeit, den Unterschied in der Anzahl der Tage zwischen Daten zu berechnen, besteht darin, die math.abs ()
-Methode zu verwenden, um den absoluten Unterschied zwischen zwei in einer Häkchen ausgedrückten Datumswerten zu finden:
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
Diese Methode stützt sich auf die Ticks
Eigenschaft der datetime
Klasse, die die Anzahl der Zecken seit Beginn des Gregorianischen Kalenders zurückgibt (100 Nanosekundenintervall). Indem wir diesen Unterschied durch die Anzahl der Zecken eines jeden Tages dividieren, erhalten wir die Anzahl der Tage zwischen den beiden Daten.
Beachten:
Unabhängig davon, welche Methode Sie auswählen, stellen Sie sicher, dass der Datumswert gültig ist und das Datum im Gregorianischen Kalender darstellt. Erwägen Sie auch, Fälle zu bearbeiten, in denen das Startdatum später als das Enddatum liegt.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3