Heim >Backend-Entwicklung >C++ >Wie kann ich Epoche Zeit in Echtzeit in C#konvertieren?

Wie kann ich Epoche Zeit in Echtzeit in C#konvertieren?

Susan Sarandon
Susan SarandonOriginal
2025-01-26 08:01:14815Durchsuche

How to Convert Epoch Time to Real Time in C#?

C#-Epochenzeit-zu-Echtzeit-Konvertierungsmethoden

Diese Anleitung zeigt, wie man die Unix-Epochenzeit (Sekunden seit dem 1. Januar 1970, UTC) in ein lesbares Datum und eine lesbare Uhrzeit in C# umwandelt. Mehrere Ansätze berücksichtigen unterschiedliche .NET-Versionen.

Modernes .NET (Core >= 2.1 und höher):

Die einfachste Methode nutzt integrierte Funktionen:

<code class="language-csharp">DateTime realTime = DateTime.UnixEpoch.AddSeconds(epochSeconds); // For seconds
DateTime realTimeMillis = DateTime.UnixEpoch.AddMilliseconds(epochMilliseconds); // For milliseconds</code>

DateTimeOffset verwenden (empfohlen seit 2020):

DateTimeOffset bietet eine verbesserte Zeitzonenbehandlung:

<code class="language-csharp">DateTimeOffset realTimeOffset = DateTimeOffset.FromUnixTimeSeconds(epochSeconds); // For seconds
DateTimeOffset realTimeOffsetMillis = DateTimeOffset.FromUnixTimeMilliseconds(epochMilliseconds); // For milliseconds

DateTime realTime = realTimeOffset.DateTime; // Extract DateTime if needed</code>

Für ältere .NET-Versionen (vor 2020):

Für ältere .NET-Frameworks, denen die oben genannten Methoden fehlen, ist eine benutzerdefinierte Funktion erforderlich:

<code class="language-csharp">private static readonly DateTime epoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);

public static DateTime FromUnixTime(long unixTime)
{
    return epoch.AddSeconds(unixTime);
}</code>

Diese Funktion fügt das angegebene unixTime (in Sekunden) zur Unix-Epoche hinzu, was zu einem DateTime-Objekt führt, das die Echtzeit darstellt. Denken Sie daran, mögliche Ausnahmen zu behandeln (z. B. ArgumentOutOfRangeException).

Wählen Sie die für Ihre .NET-Version am besten geeignete Methode. DateTimeOffset wird im Allgemeinen wegen seiner verbesserten Präzision und Zeitzonenerkennung bevorzugt.

Das obige ist der detaillierte Inhalt vonWie kann ich Epoche Zeit in Echtzeit in C#konvertieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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