Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Menukar Masa Epoch kepada Masa Nyata dalam C#?

Bagaimanakah Saya Boleh Menukar Masa Epoch kepada Masa Nyata dalam C#?

Barbara Streisand
Barbara Streisandasal
2025-01-26 08:16:09759semak imbas

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

Menukar Masa Zaman Unix kepada Tarikh dan Masa Boleh Dibaca Manusia dalam C#

Panduan ini menunjukkan beberapa kaedah untuk menukar masa zaman Unix (saat atau milisaat sejak 1 Januari 1970, 00:00:00 UTC) kepada format tarikh dan masa standard dalam C#.

Pendekatan Moden (.NET Core 2.1 dan lebih baru):

Untuk kecekapan optimum dalam versi .NET yang lebih baharu, manfaatkan kaedah terbina dalam ini:

  • AddSeconds: DateTime.UnixEpoch.AddSeconds(epochSeconds) (untuk masa zaman dalam saat)
  • AddMilliseconds: DateTime.UnixEpoch.AddMilliseconds(epochMilliseconds) (untuk masa zaman dalam milisaat)

Kaedah Alternatif (Sesuai untuk versi .NET yang lebih lama):

Pendekatan ini menggunakan DateTimeOffset untuk ketepatan yang dipertingkatkan dan pengendalian zon waktu:

  • DateTimeOffset:
    • DateTimeOffset dateTimeOffset = DateTimeOffset.FromUnixTimeSeconds(epochSeconds)
    • DateTimeOffset dateTimeOffset2 = DateTimeOffset.FromUnixTimeMilliseconds(epochMilliseconds)
  • Untuk mendapatkan DateTime objek: DateTime dateTime = dateTimeOffset.DateTime

Pendekatan Warisan:

Walaupun berfungsi, kaedah ini kurang ringkas berbanding alternatif moden:

  1. Tentukan titik permulaan zaman: private static readonly DateTime epoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
  2. Buat kaedah penukaran: public static DateTime FromUnixTime(long unixTime)
  3. Lakukan penukaran: return epoch.AddSeconds(unixTime);

Pilih kaedah yang paling sesuai dengan versi rangka kerja .NET dan gaya pengekodan anda. Pendekatan AddSeconds dan AddMilliseconds moden biasanya lebih disukai kerana kesederhanaan dan prestasinya.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menukar Masa Epoch kepada Masa Nyata dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn