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

Format d'échange (XML, JSON...) Java Discussion :

Déserialiser des DateTime de joda-time


Sujet :

Format d'échange (XML, JSON...) Java

  1. #1
    Membre confirmé Avatar de lyxthe
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    115
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 115
    Par défaut Déserialiser des DateTime de joda-time
    Bonjour,

    ma question est plus ou moins dans le titre, j'aimerais déserializer des DateTime depuis un fichier xml vers des objets java, le problème étant que j'arrive à faire quelque chose dans ce style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <maDate><iMillis>1384262973824</iMillis></maDate>
    mais c'est assez illisible et compliqué de savoir à quoi correspondent exactement les millisecondes dans le XML (à calculer depuis le 01 janvier 1970).

    J'aimerais faire la même chose en reprenant le formalisme de java.util.date où je pouvais faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <maDate>2013-11-09 08:00:00.000 CEST</maDate>
    et qui marchait très bien.

    Voilà je ne sais pas par où commencer, j'ai trouvé beaucoup d'infos sur comment sérialiser en faisant un convertor mais je suis pas certain que ça s'applique dans mon cas, je suis un peu perdu. Si vous pouvez m'orienter

    Cordialement,
    Lyxthe

  2. #2
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 713
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 713
    Par défaut
    Il y a bien un truc tout bête à faire (que j'utilise en base de données)
    c'est de stocker la valeur DateTime.toString() au lieu des millis
    tu obtiens une valeur du type :
    2013-11-12T17:56:22.155+01:00
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
            DateTime dt = new DateTime();
            String strDt = dt.toString();
            System.out.println(strDt);
    pour désérialiser tu fais :
    DateTime dt2 = new DateTime(strDt);
    Tu peux donc mettre dans ton xml :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <maDate>2013-11-12T17:56:22.155+01:00</maDate>
    en étant sûr de le récupérer
    Labor improbus omnia vincit un travail acharné vient à bout de tout - Ambroise Paré (1510-1590)

    Consulter sans modération la FAQ ainsi que les bons ouvrages : http://jmdoudoux.developpez.com/cours/developpons/java/

  3. #3
    Membre confirmé Avatar de lyxthe
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    115
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 115
    Par défaut
    Ok super, merci

Discussions similaires

  1. Joda Time (générale + question sur les périodes)
    Par aperrin dans le forum API standards et tierces
    Réponses: 2
    Dernier message: 24/10/2007, 14h56
  2. Comment additionner des datetime
    Par TrollTop dans le forum VC++ .NET
    Réponses: 4
    Dernier message: 02/10/2007, 16h02
  3. Réponses: 1
    Dernier message: 16/04/2007, 12h19
  4. Ajouter un .0 a la fin des DATETIME
    Par kedare dans le forum Langage
    Réponses: 4
    Dernier message: 26/05/2006, 16h12
  5. [Dates] Additionner des datetimes
    Par Jim_Nastiq dans le forum Langage
    Réponses: 9
    Dernier message: 12/05/2006, 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