Heim > Backend-Entwicklung > C++ > Wie schneide ich Millisekunden aus einem .NET DateTime-Objekt ab?

Wie schneide ich Millisekunden aus einem .NET DateTime-Objekt ab?

Susan Sarandon
Freigeben: 2025-01-18 22:07:11
Original
897 Leute haben es durchsucht

How to Truncate Milliseconds from a .NET DateTime Object?

Millisekunden aus .NET DateTime-Objekten entfernen

Bei der Arbeit mit Zeitstempeln aus verschiedenen Quellen ist die Anpassung der Präzision durch Entfernen von Millisekunden aus einem .NET DateTime-Objekt oft entscheidend. In diesem Handbuch werden effiziente Methoden mithilfe integrierter Funktionen und einer benutzerdefinierten Erweiterungsmethode beschrieben.

Verwendung integrierter Methoden:

Um Millisekunden mithilfe integrierter Funktionen zu eliminieren, passen Sie die DateTime-Eigenschaft von Ticks an, indem Sie den Rest nach der Division durch TimeSpan.TicksPerSecond subtrahieren und dabei die Kind-Eigenschaft beibehalten:

<code class="language-csharp">DateTime dateTime = ... any DateTime value ...;
dateTime = new DateTime(
    dateTime.Ticks - (dateTime.Ticks % TimeSpan.TicksPerSecond), 
    dateTime.Kind
);</code>
Nach dem Login kopieren

Kurze Alternative:

Ein kompakteres Äquivalent:

<code class="language-csharp">dateTime = dateTime.AddTicks(-(dateTime.Ticks % TimeSpan.TicksPerSecond));</code>
Nach dem Login kopieren

Erweiterungsmethode für Wiederverwendbarkeit:

Für eine breitere Anwendung erstellen Sie eine Erweiterungsmethode:

<code class="language-csharp">public static DateTime TruncateMilliseconds(this DateTime dateTime, TimeSpan timeSpan)
{
    if (timeSpan == TimeSpan.Zero) return dateTime;
    if (dateTime == DateTime.MinValue || dateTime == DateTime.MaxValue) return dateTime;
    return dateTime.AddTicks(-(dateTime.Ticks % timeSpan.Ticks));
}</code>
Nach dem Login kopieren

Praktische Anwendung:

Diese Erweiterungsmethode ermöglicht das Abschneiden auf verschiedene Intervalle:

<code class="language-csharp">dateTime = dateTime.TruncateMilliseconds(TimeSpan.FromMilliseconds(1)); // Remove milliseconds
dateTime = dateTime.TruncateMilliseconds(TimeSpan.FromSeconds(1));   // Truncate to seconds
dateTime = dateTime.TruncateMilliseconds(TimeSpan.FromMinutes(1));   // Truncate to minutes
// ... and so on</code>
Nach dem Login kopieren

Diese Techniken bieten einfache Möglichkeiten, Millisekunden aus .NET DateTime-Objekten zu entfernen und so konsistente Zeitstempelvergleiche über verschiedene Systeme hinweg sicherzustellen.

Das obige ist der detaillierte Inhalt vonWie schneide ich Millisekunden aus einem .NET DateTime-Objekt ab?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage