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

Langage Java Discussion :

probleme de date si on change de gmt


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 65
    Par défaut probleme de date si on change de gmt
    Bonjour,

    voila j'utilise un simple new Date() pour me donner la date et l'heure du systeme, jusque là aucun soucis.

    Le problème actuel, si je change de gmt, cela me donne une mauvaise heure.
    C'est surtout un gmt en particulier casablanca, l'heure est décalé de 4h30 environ alors que la date en bas à droite dans la barre des tâches de windows n'a reculé elle que d'une heure.

    Avez-vous une idée.

    J'ai essayé avec un calendar mais c'est pareil.

    Y-a-t-il quelqu'un qui aurait une solution ?

    Merci d'avance.

  2. #2
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Salut,

    Ce n'est pas très clair...

    Un bout de code avec les résultats obtenus (et souhaités) ne sera pas inutile

    a++

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 65
    Par défaut
    Ce n'est pas une question de code c'est juste une new Date() que je fais.

    mais bon apparament ca viendrait de l'api timezone java il confondrait casablanca avec caracas.
    Donc resultat on a 4h30 de difference et sur windows 1h.

    Voila.

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    280
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 280
    Par défaut
    A mon avis ta conversion doit pas correct a un endoit.
    Voici un code que j'utilise sur une de mes applications, inspires toi en si tu veux:
    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
     
    import java.text.SimpleDateFormat;
    import java.util.Calendar;
    import java.util.Date;
    import java.util.GregorianCalendar;
    import java.util.TimeZone;
     
    public class CurrentTime
    	{
    	static public String dateToString(Date date, String dateformat)
    		{
    		if (date == null)
    			return null;
    		SimpleDateFormat formatter = new SimpleDateFormat(dateformat);
    		return formatter.format(date);
    		}
     
    	/**
             * @param args
             */
    	public static void main(String[] args)
    		{
    		System.out.println(dateToString(now(getTimeZoneObject("Europe/Paris")), "dd/MM/yyyy HH:mm:ss"));
    		System.out.println(dateToString(now(getTimeZoneObject("Africa/Casablanca")), "dd/MM/yyyy HH:mm:ss"));
    		}
     
    	static private TimeZone getTimeZoneObject(String TimeZoneID)
    		{
    		return TimeZone.getTimeZone(TimeZoneID);
    		}
     
    	static private Date now(TimeZone tz)
    		{
    		Calendar calref = new GregorianCalendar(tz);
    		Calendar cal = new GregorianCalendar();
    		cal.set(Calendar.YEAR, calref.get(Calendar.YEAR));
    		cal.set(Calendar.MONTH, calref.get(Calendar.MONTH));
    		cal.set(Calendar.DAY_OF_MONTH, calref.get(Calendar.DAY_OF_MONTH));
    		cal.set(Calendar.HOUR_OF_DAY, calref.get(Calendar.HOUR_OF_DAY));
    		cal.set(Calendar.MINUTE, calref.get(Calendar.MINUTE));
    		cal.set(Calendar.SECOND, calref.get(Calendar.SECOND));
    		cal.set(Calendar.MILLISECOND, calref.get(Calendar.MILLISECOND));
    		return cal.getTime();
    		}
     
    	}
    Le resultat est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    14/01/2009 15:43:28
    14/01/2009 14:43:28
    ---
    Farid

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 65
    Par défaut
    Merci pour ton code.

    Mais en fait moi j'utilise l'api de base qui gere les id automatiquement, donc pas besoin de s'amuser a recopier les 576 ids et de faire la conversion a la main alors que l'api java le fourni.

    Seulement dans l'api java il y a un bug. De plus en testant les differents GMT seulement celui de casablanca ne fonctionne pas.

    Cetait seulement pour savoir si quelqu'un avait eu le meme probleme, puisque au depart je n'etais pas absolument sur que l'api deconnait.

    Voila merci

  6. #6
    Expert éminent
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par pyth35 Voir le message
    Seulement dans l'api java il y a un bug. De plus en testant les differents GMT seulement celui de casablanca ne fonctionne pas.
    Comment tu arrives à cette conclusion ???

    a++

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

Discussions similaires

  1. problemes de dates SQL PARADOX
    Par igs dans le forum Paradox
    Réponses: 5
    Dernier message: 05/07/2004, 18h35
  2. Problème de date
    Par rh0D'm@n dans le forum Modules
    Réponses: 3
    Dernier message: 11/05/2004, 15h16
  3. Probleme de date
    Par poufouille dans le forum Bases de données
    Réponses: 4
    Dernier message: 19/03/2004, 14h19
  4. probleme de date (toujours et encore des dates)
    Par Yannesco dans le forum SQL
    Réponses: 3
    Dernier message: 02/02/2004, 19h04
  5. Probleme de date
    Par danuz dans le forum XMLRAD
    Réponses: 3
    Dernier message: 24/09/2003, 15h57

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