Maison >développement back-end >C++ >Comment puis-je arrondir un objet DateTime aux X minutes les plus proches ?
Lorsqu'il s'agit d'horodatages, il devient souvent nécessaire d'arrondir les valeurs de temps à des intervalles spécifiques. Par exemple, vous devrez peut-être arrondir une heure aux 15 minutes les plus proches, en particulier lorsque vous travaillez avec des systèmes de planification ou de rendez-vous.
Pour répondre à ce besoin, il existe une fonction polyvalente qui permet d'arrondir facilement une heure. Objet DateTime aux X minutes les plus proches.
L'extrait de code suivant présente ce qui précède function :
DateTime RoundUp(DateTime dt, TimeSpan d) { return new DateTime((dt.Ticks + d.Ticks - 1) / d.Ticks * d.Ticks, dt.Kind); }
Pour utiliser cette fonction, fournissez simplement le DateTime que vous souhaitez arrondir et l'intervalle (TimeSpan) auquel arrondir. Par exemple, pour arrondir aux 15 minutes supérieures :
var dt1 = RoundUp(DateTime.Parse("2011-08-11 16:59"), TimeSpan.FromMinutes(15)); // dt1 == {11/08/2011 17:00:00}
Cela arrondira l'heure à l'intervalle de 15 minutes le plus proche, ce qui donnera 17h00 dans l'exemple ci-dessus.
var dt2 = RoundUp(DateTime.Parse("2011-08-11 17:11"), TimeSpan.FromMinutes(30)); // dt2 == {11/08/2011 17:30:00}
var dt3 = RoundUp(DateTime.Parse("2011-08-11 18:05"), TimeSpan.FromMinutes(60)); // dt3 == {11/08/2011 19:00:00}
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!