Rumah >pembangunan bahagian belakang >C++ >Bagaimana cara mengira dan memaparkan masa relatif dengan cekap di C#?
memaparkan masa relatif dengan cekap dalam aplikasi C#
Banyak aplikasi C# memerlukan memaparkan masa berlalu sejak peristiwa tertentu dalam format mesra pengguna. Artikel ini membentangkan kaedah ringkas dan cekap untuk mengira dan menyampaikan masa relatif.Kami memanfaatkan
dan satu siri pemalar selang masa untuk menentukan perwakilan masa relatif yang paling sesuai. Coretan kod berikut menggambarkan pendekatan ini: TimeSpan
<code class="language-csharp">const int SECOND = 1; const int MINUTE = 60 * SECOND; const int HOUR = 60 * MINUTE; const int DAY = 24 * HOUR; const int MONTH = 30 * DAY; TimeSpan ts = DateTime.UtcNow - yourDate; // Note: Direct subtraction for simplicity. Consider handling potential negative values. double delta = Math.Abs(ts.TotalSeconds); if (delta < 1 * MINUTE) { return $"{Math.Round(delta)} seconds ago"; } else if (delta < 2 * HOUR) { return $"{Math.Round(delta / MINUTE)} minutes ago"; } else if (delta < 2 * DAY) { return $"{Math.Round(delta / HOUR)} hours ago"; } else if (delta < 30 * DAY) { return $"{Math.Round(delta / DAY)} days ago"; } else if (delta < 12 * MONTH) { return $"{Math.Round(delta / MONTH)} months ago"; } else { return $"{Math.Round(delta / (12 * MONTH))} years ago"; }</code>Menggunakan pemalar untuk unit masa meningkatkan kebolehbacaan kod dan kebolehkerjaan. Algoritma dengan cekap memeriksa terhadap selang masa yang lebih besar, mengembalikan rentetan masa relatif manusia yang boleh dibaca. Kaedah ini boleh disesuaikan dan mudah dilanjutkan untuk memasukkan unit masa tambahan atau menyesuaikan format output.
Atas ialah kandungan terperinci Bagaimana cara mengira dan memaparkan masa relatif dengan cekap di C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!