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 :

[Date] comment récuperer le GMT ?


Sujet :

Collection et Stream Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de silverfab34
    Inscrit en
    Mars 2006
    Messages
    203
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Mars 2006
    Messages : 203
    Par défaut [Date] comment récuperer le GMT ?
    Bonjour,
    Je travaille sur les dates et je souhaiterais récupérer seulement le GMT ou que le GMT soit inclue dans la date

    Je fais un :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Date date1 = new Date();
    Donc j'ai une date du style "Tue Sep 07 09:34:28 GMT 2010"

    Comment faire pour avoir en plus "Tue Sep 07 09:34:28 GMT+02" ........comme par défault en javascript !
    Y a t il un moyen pour n'avoir que le GMT seul (sinon je ferais un split sur la date !!)
    Merci pour votre réponse,

  2. #2
    Membre Expert
    Avatar de CheryBen
    Inscrit en
    Mai 2005
    Messages
    1 599
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 599
    Par défaut
    Bonjour, pour utiliser les fuseaux horaires des dates, il faut utiliser les objets de type Calandar, par exemple GregorianCalendar.

    L'objet Date est toujours GMT.

  3. #3
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Pour forcer l'affichage en GMT+2, il faut utiliser un SimpleDateFormat dont on spécifie la TimeZone.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss z");
    dateFormat.setTimeZone(TimeZone.getTimeZone("GMT+2"));
     
    Date date = new Date(); 
    System.out.println(dateFormat.format(date));
    À noter que cela force, littéralement, l'emploi de GMT+2. GMT plus deux heures. Pas d'histoire d'heure de Paris ni de passage à l'heure d'été ou heure d'hiver : GMT plus deux heures, constamment.

    Si ce qu'on veut c'est l'heure de Paris, je recommande :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss 'GMT'Z");
    dateFormat.setTimeZone(TimeZone.getTimeZone("Europe/Paris"));
    À noter que si on ne précise pas de time zone, alors Java utilise la time zone par défaut de la machine.
    Ce qui signifie que la time zone par défaut de la machine qui a obtenu les résultats du dessus est GMT. Dans ces circonstances, JavaScript aurait le même comportement.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  4. #4
    Membre confirmé Avatar de silverfab34
    Inscrit en
    Mars 2006
    Messages
    203
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Mars 2006
    Messages : 203
    Par défaut
    Ouais, je vois l'objet GregorianCalendar mais trouvé le GMT +2 , je ne le vois pas !!

  5. #5
    Membre confirmé Avatar de fedfil
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    91
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2004
    Messages : 91
    Par défaut
    Pour récupérer l'information "GMT+2", il faut en effet utiliser un Calendar.
    Et à partir de ce calendar, récupérer l'offset de la Timezone qui correspond au nombre de milliseconds entre Greenwinch et ton Timezone.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Calendar.getInstance().getTimeZone().getDefault().getRawOffset()
    Plus d'info sur la javadoc : http://download.oracle.com/javase/1....awOffset%28%29

  6. #6
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Oui enfin, plus important, un objet Date n'a pas de timezone, point barre.

    Quand on veut afficher une Date, il faut choisir dans quelle time zone, sinon ce sera la time zone par défaut de la machine.
    Mais une Date, par elle-même, n'a pas de time zone.

    Un objet Calendar en a une, c'est obligatoire pour manipuler un calendrier. Mais un objet Date n'en a pas.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. Réponses: 1
    Dernier message: 12/02/2009, 16h51
  2. comment récuperer la date de modification d'un fichier avec FOPEN ?
    Par Frantz69 dans le forum Bibliothèque standard
    Réponses: 8
    Dernier message: 05/02/2009, 09h13
  3. Comment récuperer la date en milliseconde
    Par colombe dans le forum Oracle
    Réponses: 18
    Dernier message: 26/05/2008, 19h42
  4. [c#] comment récuperer la date et l'heure en cours
    Par juloul dans le forum Windows Forms
    Réponses: 1
    Dernier message: 03/10/2005, 16h43
  5. Comment récuperer une date depuis une chaine?
    Par shopoto dans le forum ASP
    Réponses: 4
    Dernier message: 12/05/2004, 16h17

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