Heim >Backend-Entwicklung >C++ >Wie berechnet man die Differenz in Monaten zwischen zwei Daten in C# genau?
C# fehlt ein direktes Äquivalent zur DateDiff()
-Funktion von VB.NET zur Berechnung von Monatsdifferenzen. Aufgrund der unterschiedlichen Monatslängen ist es ungenau, die Tagesdifferenz einfach durch 30 zu teilen.
Eine genauere Methode beinhaltet diese Formel:
<code class="language-csharp">((date1.Year - date2.Year) * 12) + date1.Month - date2.Month</code>
Diese Berechnung ignoriert die Tageskomponente. Beispielsweise beträgt die Differenz zwischen dem 1. Januar 2011 und dem 31. Dezember 2010 1. Ein positives Ergebnis bedeutet, dass date1
nach date2
liegt; Ein negatives Ergebnis bedeutet das Gegenteil.
Für eine ungefähre durchschnittliche Anzahl von Monaten verwenden Sie Folgendes:
<code class="language-csharp">date1.Subtract(date2).Days / (365.25 / 12)</code>
Der Einfachheit halber werden hier durchschnittlich 365,25 Tage pro Jahr verwendet. Für eine höhere Präzision sollten Sie den genaueren Durchschnitt von etwa 365,2425 Tagen pro Jahr verwenden. Validieren Sie die Ergebnisse immer, insbesondere bei Anwendungen, die große Datumsbereiche verarbeiten.
Das obige ist der detaillierte Inhalt vonWie berechnet man die Differenz in Monaten zwischen zwei Daten in C# genau?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!