Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah saya menukar masa EPOCH UNIX ke objek DateTime masa nyata di C#?
Tukar Unix Epoch Time kepada DateTime dengan Mudah dalam C#
Masa zaman Unix menandakan detik berlalu sejak 1 Januari 1970, 00:00:00 UTC. Panduan ini menunjukkan cara untuk menukar ini dengan cekap kepada objek C# DateTime.
NET Moden (>= 2.1): Pendekatan Paling Mudah
.NET Core 2.1 dan kemudiannya menawarkan kaedah diperkemas:
DateTime.UnixEpoch.AddSeconds(epochSeconds)
DateTime.UnixEpoch.AddMilliseconds(epochMilliseconds)
Ini secara langsung menambah offset zaman (dalam saat atau milisaat) pada masa zaman Unix asas.
Versi .NET Lama:
Untuk versi sebelum .NET Core 2.1, gunakan fungsi ringkas ini:
<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>
Mendapatkan DateTime daripada DateTimeOffset:
Untuk mengekstrak objek DateTime
daripada DateTimeOffset
, hanya gunakan:
<code class="language-csharp">DateTime dateTime = dateTimeOffset.DateTime;</code>
Nota Kemas Kini Penting:
Penyelesaian ini telah dikemas kini untuk keserasian merentas versi .NET yang berbeza. Untuk prestasi optimum dalam versi .NET yang lebih baharu, manfaatkan kaedah DateTime.UnixEpoch
.
Atas ialah kandungan terperinci Bagaimanakah saya menukar masa EPOCH UNIX ke objek DateTime masa nyata di C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!