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

Collection et Stream Java Discussion :

Calendrier Java GregorianCalendar


Sujet :

Collection et Stream Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    120
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 120
    Points : 83
    Points
    83
    Par défaut Calendrier Java GregorianCalendar
    Bonjour, j'ai besoin d'un petit conseil.
    En fait quand j'execute ce code :
    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
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    /*
     * To change this template, choose Tools | Templates
     * and open the template in the editor.
     */
    package javaapplication16;
     
    import java.text.DateFormat;
    import java.text.SimpleDateFormat;
    import java.util.Calendar;
    import java.util.GregorianCalendar;
     
    /**
     *
     * @author NiKo
     */
    public class TriSemaine {
     
        public static void main(String[] args) {
            GregorianCalendar d = new GregorianCalendar();
            d.setFirstDayOfWeek(4);
     
            d.set(Calendar.DAY_OF_MONTH, 1);
     
            int anneeMax = 2010;
     
            for (int k = d.get(Calendar.YEAR); k <= anneeMax; k++) {
                System.out.println("\n");
                System.out.println("####### CALENDRIER " + k + " ########");
     
                d.set(Calendar.YEAR, k);
     
                int jourDeWeekEnd = d.get(Calendar.DAY_OF_WEEK);
     
                for (int j = d.get(Calendar.MONTH); j <= Calendar.DECEMBER; j++) {
                    int mois = j;
                    d.set(Calendar.MONTH, j);
     
                    DateFormat month = new SimpleDateFormat("MMMMMMMMM");
                    System.out.println("\t\n");
                    System.out.println("Année : " + d.get(Calendar.YEAR));
                    System.out.println("Mois de : " + month.format(d.getTime()));
                    System.out.println("Lun Mar Mer Jeu Ven Sam Dim");
     
                    for (int i = Calendar.MONDAY; i < jourDeWeekEnd; i++) {
                        System.out.print("    ");
                    }
     
                    while (d.get(Calendar.MONTH) == mois) {
                        int jour = d.get(Calendar.DAY_OF_MONTH);
     
                        if (jour < 10) {
                            System.out.print(" ");
                        }
     
                        System.out.print(jour);
                        System.out.print("  ");
     
                        //chaque samedi il y a un retour � la ligne
                        if (jourDeWeekEnd == Calendar.SUNDAY) {
                            System.out.println("Semaine : " + d.get(d.WEEK_OF_YEAR));
                            System.out.println();
                        }
     
                        //permet de changer de jour tous les jours
                        d.add(Calendar.DAY_OF_MONTH, 1);
     
                        //remet � jour les jours de semaine � chaque changement de jour
                        jourDeWeekEnd = d.get(Calendar.DAY_OF_WEEK);
                    }
                }
                d.add(Calendar.YEAR, 1);
            }
        }
    }
    J'obtiens :
    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
    Année : 2009
    Mois de : décembre
    Lun Mar Mer Jeu Ven Sam Dim
         1   2   3   4   5   6  Semaine : 49
     
     7   8   9  10  11  12  13  Semaine : 50
     
    14  15  16  17  18  19  20  Semaine : 51
     
    21  22  23  24  25  26  27  Semaine : 52
     
    28  29  30  31  
     
    ####### CALENDRIER 2010 ########
     
     
    Année : 2010
    Mois de : janvier
    Lun Mar Mer Jeu Ven Sam Dim
                     1   2   3  Semaine : 1
     
     4   5   6   7   8   9  10  Semaine : 2
     
    11  12  13  14  15  16  17  Semaine : 3
     
    18  19  20  21  22  23  24  Semaine : 4
     
    25  26  27  28  29  30  31  Semaine : 5
    Alors que en Janvier 2010 la semaine 1 Commence au 4 Janvier...

    Comment puis je remédier à ça?
    Cordialement.

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    120
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 120
    Points : 83
    Points
    83
    Par défaut
    J'ai trouvé en fait, Désolé de l'erreur pour ceux qui chercherait par hasard, il faut définir
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    d.setMinimalDaysInFirstWeek(4);
    et ça fonctionne nickel.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Calendrier avec GregorianCalendar
    Par riderfun dans le forum Collection et Stream
    Réponses: 3
    Dernier message: 26/05/2009, 13h16
  2. Réponses: 6
    Dernier message: 02/04/2007, 19h13
  3. calendrier en java
    Par le_tigre_est_en_toi dans le forum Collection et Stream
    Réponses: 1
    Dernier message: 29/12/2006, 19h38
  4. Calendrier simple en java
    Par Premium dans le forum AWT/Swing
    Réponses: 1
    Dernier message: 20/12/2006, 23h50
  5. Calendrier en Java
    Par r-o-m-z dans le forum Collection et Stream
    Réponses: 5
    Dernier message: 21/10/2006, 15h51

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