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 :

Conversion de format de date


Sujet :

Langage Java

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 5
    Points : 2
    Points
    2
    Par défaut Conversion de format de date
    Bonjour,
    J'utilise la classe SimpleDateFormat pour convertir une date recu sous un certain pattern en un format de traitement ( pattern ) unique pour tous mes services java.
    Exemple :
    Je désire convertir la date recu : 20070321T11:52:49+01:00
    Je passe a mon service le pattern suivant : yyyyMMdd'T'HH:mm:ssz
    J'ai récemment mis a jour ma JVM en passant de la 1.3 à la 1.4.2 et je m'appercois que mon service de conversion de date ne fonctionne plus.
    j'obtiens l'erreur suivante : java.text.ParseException: Unparseable date: "20070321T11:52:49+01:00"
    J'ai n'ai cependant noté aucun changement majeur dans la classe SimpleDateFormat au niveau de la doc de SUN.
    Est ce que quelqu'un aurait une idée de l'origine du problème.
    Merci

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 5
    Points : 6
    Points
    6
    Par défaut
    Il faut mieux de synchroniser un peu la version de JDK. Maintenant on a 6, et bientot on aura JDK 7.

    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
    import java.text.*;
    import java.util.*;
    public class TestDateSimple {
    	public static void main(String[] args){
    		String s= "yyyyMMdd'T'HH:mm:ssz";
    		String sDate = "20070321T11:52:49+01:00" ;
    		//z en majuscule
    		SimpleDateFormat sdf =new SimpleDateFormat(s);
    		System.out.println("Un: "+sdf.format(new Date()));
    		sdf.applyPattern("yyyyMMdd'T'HH:mm:ssZ");
    		System.out.println("Deux: "+sdf.format(new Date()));
    		String sNouvelle = sDate.replaceFirst(":(?=00$)", "");
    		System.out.println("Trois:"+sNouvelle);
    		try {
    			System.out.println("Quatre: " + sdf.parse(sNouvelle));
    		} catch (ParseException e) {
    			// TODO Bloc catch auto-généré
    			e.printStackTrace();
    		}
    	}
    }

    Voila le résulat:
    Un: 20070321T18:35:17CET
    Deux: 20070321T18:35:17+0100
    Trois:20070321T11:52:49+0100
    Quatre: Wed Mar 21 11:52:49 CET 2007

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    Merci pour ta réponse. Ceci dis, je vois que tu utilise la méthode replaceFirst pour enlever les : pour reformatter la date afin qu'elle soit adapter au pattern.
    C'est exactement ce que je voulais eviter. Mon code marche bien sur la JVM 1.3 et je veux le migrer en 1.4 sans pour autant le modifier.
    Je serai intersser de savoir s'il y a un workaround pour palier a ce problème sans modifier mon service.

Discussions similaires

  1. [Débutant] conversion de format de date
    Par Attila54 dans le forum VB.NET
    Réponses: 29
    Dernier message: 29/05/2012, 16h14
  2. Conversion de format de date
    Par sono77 dans le forum Développement
    Réponses: 4
    Dernier message: 13/04/2012, 10h18
  3. [VS2005][MOBILE]Conversion entre format de date
    Par myspirou dans le forum VB.NET
    Réponses: 2
    Dernier message: 13/08/2008, 15h46
  4. Conversion de format de date
    Par decour dans le forum Access
    Réponses: 2
    Dernier message: 03/10/2005, 10h39
  5. Réponses: 11
    Dernier message: 02/09/2003, 14h20

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