IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Dotnet Discussion :

Numero de la semaine en c#


Sujet :

Dotnet

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    Inscrit en
    Novembre 2012
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations forums :
    Inscription : Novembre 2012
    Messages : 13
    Par défaut Numero de la semaine en c#
    Bonjour

    voici un algorithme que j'ai devellopé en c# et qui permet de calculer le numéro de la semaine d'une date :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    string date = "01/01/" + kryptonDateTimePicker1.Value.Year; 
    DateTime test = new DateTime(); 
    test = Convert.ToDateTime(date); 
     
    int a = 0; 
     
     
    if (test.DayOfWeek.ToString() == "Monday") 
    { a = 1; } 
    else if (test.DayOfWeek.ToString() == "Tuesday") 
    { a = 2; } 
    else if (test.DayOfWeek.ToString() == "Wednesday") 
    { a = 3; } 
    else if (test.DayOfWeek.ToString() == "Thursday") 
    { a = 4; } 
    else if (test.DayOfWeek.ToString() == "Friday") 
    { a = 5; } 
    else if (test.DayOfWeek.ToString() == "Saturday") 
    { a = 6; } 
    else if (test.DayOfWeek.ToString() == "Sunday") 
    { a = 7; } 
     
    int x = Convert.ToInt32(kryptonDateTimePicker1.Value.DayOfYear); 
    float y = (Convert.ToInt32(kryptonDateTimePicker1.Value.DayOfYear) + a - 1); 
    y = y / 7; 
    float z; 
    int diff = 0; 
    if (y <= 1) 
    { 
    textBox1.Text = "S" + 1; 
    } 
    else if (y > 1 ) 
    { 
     
    diff = Convert.ToInt32(y); 
    z = y - (Convert.ToInt32(y)); 
    if (z == 0) 
    { 
     
    textBox1.Text = "S" + (int)y; 
    } 
    else 
    { 
    textBox1.Text = "S" + ((int)y +1); 
    } 
    }
    si vous testez et que sa marche pour vous aussi faite circuler.

    Salam

  2. #2
    Membre émérite Avatar de chamamo
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    588
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 588
    Par défaut
    Je me permets de faire quelques remarques:

    1. Pourquoi convertir ton Enum en string pour pouvoir comparer? tu peux le faire comme ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (test.DayOfWeek == DayOfWeek.Monday)
    Encore mieux:

    ça t’évite de faire 7 tests.

    2. Tu dis qu'on peut la récupérer pour la réutiliser, ce n'est pas possible car dans ta fonction tu appelles des textbox, si je veux l'utiliser dans une appli console ce n'est pas possible.

    3. La semaine ne commence pas forcement le Lundi, le weekend ce n'est pas forcement samedi dimanche dans certains pays, parfois c'est le vendredi samedi (weekend semi-universel), la plupart des pays arabes par exemple appliquent le weekend semi-universel.

    4. La semaine numéro 1 ça commence pas forcement le premier jour de l'année, ça peut être la semaine du premier jour de l'année, la première semaine de 4 jours ou la première semaine complète.

    5. Et finalement tu essaies de réinventer la roue car la fonction existe déjà:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    int numero = CultureInfo.CurrentCulture.Calendar.GetWeekOfYear(DateTime.Now);
    Avec ce code je récupère le numéro de la semaine courante.

Discussions similaires

  1. Recuperer le numero de la semaine actuelle
    Par fayred dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 28/08/2007, 09h34
  2. Numero de la semaine en java
    Par bonano dans le forum Collection et Stream
    Réponses: 2
    Dernier message: 21/06/2007, 17h11
  3. recuperer le numero de la semaine
    Par mqsi dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 22/01/2007, 11h40
  4. calcul numero de la semaine
    Par lkryss dans le forum Langage
    Réponses: 2
    Dernier message: 08/06/2006, 09h02
  5. [Date] récup du numero de la semaine et du mois
    Par cmoa59 dans le forum Collection et Stream
    Réponses: 6
    Dernier message: 03/06/2005, 16h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo