Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Menukar Masa Epoch kepada Tarikh dan Masa yang Boleh Dibaca Manusia dalam C#?

Bagaimana untuk Menukar Masa Epoch kepada Tarikh dan Masa yang Boleh Dibaca Manusia dalam C#?

Patricia Arquette
Patricia Arquetteasal
2025-01-26 08:06:11450semak imbas

How to Convert Epoch Time to a Human-Readable Date and Time in C#?

Penukaran Masa Epoch C#: Tarikh dan Masa Boleh Dibaca Manusia

Masa zaman, yang mewakili saat sejak 1 Januari 1970, 00:00:00 UTC, boleh ditukar dengan mudah kepada format tarikh dan masa yang mesra pengguna dalam C#. Panduan ini meneroka beberapa kaedah.

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

Pendekatan paling mudah dalam versi .NET terkini melibatkan penggunaan DateTime.UnixEpoch:

  • DateTime.UnixEpoch.AddSeconds(epochSeconds): Menambah bilangan saat yang ditentukan pada zaman, menghasilkan objek DateTime.
  • DateTime.UnixEpoch.AddMilliseconds(epochMilliseconds): Sama seperti di atas, tetapi menggunakan milisaat.

Memanfaatkan DateTimeOffset:

Untuk pengendalian zon waktu yang lebih tepat, pertimbangkan DateTimeOffset:

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

Kaedah Klasik (untuk rangka kerja .NET yang lebih lama):

Jika anda menggunakan versi .NET lama yang tidak mempunyai kaedah di atas, fungsi utiliti ini menyediakan fungsi yang sama:

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

Fungsi ini menambah unixTime (dalam saat) pada masa mula zaman. Ingat untuk melaraskan untuk milisaat jika perlu.

Atas ialah kandungan terperinci Bagaimana untuk Menukar Masa Epoch kepada Tarikh dan Masa yang Boleh Dibaca Manusia 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
Artikel sebelumnya:Menetapkan rentetan dalam CArtikel seterusnya:Menetapkan rentetan dalam C