Arrondir DateHeure aux X minutes les plus proches
Question :
Comment pouvez-vous arrondir un objet DateTime au multiple le plus proche d'un nombre de minutes spécifié ?
Utiliser Cas :
Cette technique est utile dans les scénarios où vous devez caler une heure sur un intervalle cohérent, comme la planification de rendez-vous ou l'alignement de données sur des délais spécifiques.
Solution :
La fonction C# suivante, RoundUp, réalise cet arrondi opération :
public static DateTime RoundUp(DateTime dt, TimeSpan d) { return new DateTime((dt.Ticks + d.Ticks - 1) / d.Ticks * d.Ticks, dt.Kind); }
Exemple :
Pour arrondir une valeur DateTime aux 15 minutes les plus proches, utilisez le code suivant :
var dt1 = RoundUp(DateTime.Parse("2011-08-11 16:59"), TimeSpan.FromMinutes(15));
Cela entraînera la définition de dt1 sur {11/08/2011 17:00:00}. De même, si la valeur d'origine est 2011-08-11 17:01, dt1 sera défini sur {11/08/2011 17:15:00}.
En ajustant l'argument TimeSpan.FromMinutes(15) , vous pouvez spécifier n'importe quel intervalle d'arrondi souhaité. Cette méthode constitue un moyen pratique d'arrondir les temps à des intervalles spécifiques, vous permettant ainsi d'effectuer des calculs de temps précis dans vos applications.
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!