C# : Recuperer le numéro de la semaine en cours.
Bonjour, bienvenue dans ce tuto. Je vais vous expliquer comment récupérer le numéro de la semaine en langage C#. DateTime ne nous permettant pas de le récupérer directement, nous allons utiliser la fonction GetWeekOfYear de CultureInfo.CurrentCulture.Calendar comme suit :
int num_semaine = CultureInfo.CurrentCulture.Calendar.GetWeekOfYear(DateTime.Now, CalendarWeekRule.FirstFullWeek, DayOfWeek.Monday);
DateTime.Now : recupere la date du jour en cours.
DayOfWeek : Définit quel est le premier jour de la semaine.
CalendarWeekRule.FirstFullWeek : est la valeur qui définit une semaine. Trois possibilités :
FirstDay : La premiere semaine de l’année commence le premier jour de l’année et fini le dernier jour de la semaine en cours. Ex : si le 1er janvier est un jeudi et que vous avez mis DayOfWeek à lundi, la première semaine ira du jeudi 1er au dimanche 4 Janvier.
FirstFourDayWeek : La première semaine de l’année est la première semaine de l’année disposant d’au moins 4 jours avant le dernier jour de celle-ci. Ex :
Si ma première semaine commence un mardi et que j’ai mis comme premier jour de la semaine le lundi, j’ai bien plus de 4 jours du mardi 1er au dimanche 6 Janvier. Ce sera donc ma première semaine.
A l’inverse, si le 1er janvier est un vendredi, je n’ai que 3 jours entre le vendredi 1er et le dimanche 3 janvier. Ma première semaine sera donc du lundi 4 janvier au dimanche 10 janvier.
FirstFullWeek : Comme son nom l’indique, la première semaine de l’année est la première semaine pleine. Ex : Le 1er janvier est un mercredi, ce qui fait que si l’on met comme premier jour de la semaine un lundi, la première semaine sera celle du lundi 6 janvier au dimanche 12 janvier.
Merci d'avoir suivi cette astuce et bon code =)