Bundarkan TarikhMasa kepada X Minit Terdekat
Soalan:
Bagaimana anda boleh membulatkan naikkan objek DateTime kepada gandaan terdekat bagi nombor tertentu minit?
Kes Penggunaan:
Teknik ini berguna dalam senario di mana anda perlu mengambil masa pada selang masa yang konsisten, seperti menjadualkan janji temu atau menjajarkan data kepada tertentu jangka masa.
Penyelesaian:
Yang berikut Fungsi C#, RoundUp, mencapai operasi pembundaran ini:
public static DateTime RoundUp(DateTime dt, TimeSpan d) { return new DateTime((dt.Ticks + d.Ticks - 1) / d.Ticks * d.Ticks, dt.Kind); }
Contoh:
Untuk membulatkan nilai DateTime kepada 15 minit terdekat, gunakan kod berikut:
var dt1 = RoundUp(DateTime.Parse("2011-08-11 16:59"), TimeSpan.FromMinutes(15));
Ini akan menyebabkan dt1 ditetapkan kepada {11/08/2011 17:00:00}. Begitu juga, jika nilai asal ialah 11-08-2011 17:01, dt1 akan ditetapkan kepada {11/08/2011 17:15:00}.
Dengan melaraskan hujah TimeSpan.FromMinutes(15) , anda boleh menentukan sebarang selang pembundaran yang diingini. Kaedah ini menyediakan cara yang mudah untuk membulatkan masa kepada selang tertentu, membolehkan anda melakukan pengiraan masa yang tepat dalam aplikasi anda.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengumpulkan Objek DateTime kepada X Minit Terdekat dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!