Millisekunden aus .NET DateTime-Werten entfernen
Beim Vergleich von Zeitstempeln aus einer externen Quelle mit Datenbankwerten ist es oft notwendig, Diskrepanzen in der Millisekundengenauigkeit zu beseitigen. Dies tritt normalerweise auf, wenn dem eingehenden Zeitstempel Millisekundendetails fehlen, sodass Millisekunden aus dem .NET-DateTime
-Objekt entfernt werden müssen.
Hier sind effiziente Methoden zum Entfernen von Millisekunden:
Methode 1: Direkte Ticks-Manipulation
Dieser Ansatz ändert direkt die DateTime
-Eigenschaft von Ticks
:
DateTime dateTime = ...; // Your DateTime value dateTime = new DateTime(dateTime.Ticks - (dateTime.Ticks % TimeSpan.TicksPerSecond), dateTime.Kind);
Methode 2: AddTicks verwenden
Eine prägnantere Alternative nutzt die AddTicks
-Methode:
dateTime = dateTime.AddTicks(-(dateTime.Ticks % TimeSpan.TicksPerSecond));
Methode 3: Erweiterungsmethode für anpassbare Kürzung
Für mehr Flexibilität ermöglicht eine Erweiterungsmethode das Abschneiden auf jedes gewünschte Intervall:
public static DateTime Truncate(this DateTime dateTime, TimeSpan timeSpan) { return dateTime.AddTicks(-(dateTime.Ticks % timeSpan.Ticks)); }
Diese Erweiterungsmethode ermöglicht die Millisekundenkürzung mit:
dateTime = dateTime.Truncate(TimeSpan.FromMilliseconds(1));
Außerdem unterstützt es die Kürzung auf Sekunden oder Minuten:
dateTime = dateTime.Truncate(TimeSpan.FromSeconds(1)); // Truncate to the nearest second dateTime = dateTime.Truncate(TimeSpan.FromMinutes(1)); // Truncate to the nearest minute
Diese Methoden bieten unkomplizierte Lösungen zum Entfernen von Millisekunden aus .NET DateTime
Werten und gewährleisten genaue Zeitstempelvergleiche unabhängig von Präzisionsunterschieden.
Das obige ist der detaillierte Inhalt vonWie schneide ich Millisekunden von einem .NET DateTime-Wert ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!