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

  1. #1
    Membre confirmé
    Générer la liste des semaines selon la norme ISO 8601
    Bonjour à tous,

    je cherche à générer la liste des jours avec leur semaine selon la norme ISO-8601, à savoir :

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    mydate='2012-12-27 02:26:55.983'
    for (i=1;i<8;i++)
    {
      mydateAsDate=new Date().parse('yyyy-MM-dd H:mm:ss.S',mydate)+i;
      println 'Week ' + mydateAsDate.format('w') + '-' + mydateAsDate.format('yyyy') + ' => ' + mydateAsDate.format('dd.MM.yyyy');
    }



    ceci me renvoie le résultat suivant:
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Week 52-2012 => 28.12.2012
    Week 52-2012 => 29.12.2012
    Week 1-2012 => 30.12.2012
    Week 1-2012 => 31.12.2012
    Week 1-2013 => 01.01.2013
    Week 1-2013 => 02.01.2013
    Week 1-2013 => 03.01.2013


    ce qui est évidemment incorrect pour les jours 30.12.2012 et 31.12.2012 car ils sont de la semaine 1-2013 et non 1-2012

    Une idée ?

    d'avance merci !
    laloune
    Consultant B.I.
    Spécialité(s): Excel, SQL, Business Intelligence (Jedox Palo, Talend)

    "A problem worthy of attack proves its worth by fighting back." Piet Hein

  2. #2
    Expert éminent sénior
    Salut,



    En Java tu as le pattern "YYYY" (en majuscule) qui correspond à l'année de la semaine en cours.
    Y'a des chances que ce soit la même chose en Groovy.
    Sinon il faut regarder la doc de ce format() pour voir s'il y a un pattern équivalent.


    a++
    Cette signature n'a pas pu être affichée car elle comporte des erreurs.

  3. #3
    Modérateur

    C'est ce qu'on appelle "l'année de la semaine" (week year,) pour faire plus court que "année correspondant au numéro de semaine de l'année."

    Ça s'obtient avec Y majuscule, pas minuscule. Nouveauté Java 1.7. Avant, il fallait calculer le cas soi-même.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  4. #4
    Membre confirmé
    Bonjour,

    un GRAND merci à vous deux, ca fonctionne !

    ca n'a pas fonctionné au début, mais ma jvm était effectivement encore en 1.6. Une petite update et tout roule !
    laloune
    Consultant B.I.
    Spécialité(s): Excel, SQL, Business Intelligence (Jedox Palo, Talend)

    "A problem worthy of attack proves its worth by fighting back." Piet Hein

###raw>template_hook.ano_emploi###