11 AĞUSTOS 2011, PERŞEMBE
Nasıl en yakın X dakika için zaman yakalayabilir miyim?
Yuvarlama için basit bir işlevi varen yakın 15 dakika için DateTime
?
E. g.
2011-08-11 16:59
2011-08-11 17:00
olur
2011-08-11 17:00
2011-08-11 17:00
gibi kalır
2011-08-11 17:01
2011-08-11 17:15
olur
CEVAP
11 AĞUSTOS 2011, PERŞEMBE
DateTime RoundUp(DateTime dt, TimeSpan d)
{
return new DateTime(((dt.Ticks d.Ticks - 1) / d.Ticks) * d.Ticks);
}
Örnek:
var dt1 = RoundUp(DateTime.Parse("2011-08-11 16:59"), TimeSpan.FromMinutes(15));
// dt1 == {11/08/2011 17:00:00}
var dt2 = RoundUp(DateTime.Parse("2011-08-11 17:00"), TimeSpan.FromMinutes(15));
// dt2 == {11/08/2011 17:00:00}
var dt3 = RoundUp(DateTime.Parse("2011-08-11 17:01"), TimeSpan.FromMinutes(15));
// dt3 == {11/08/2011 17:15:00}
Bunu Paylaş:
Nasıl bir dize için var_dump sonucu ya...
Nasıl her zaman 2 ondalık basamak göst...
Nasıl en yakın tamsayı değeri için bir...
Nasıl dakika içinde iki Joda-Zaman Dat...
Ne zaman Ruby en yakın 15 dakika için ...