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] simpleDateFormat et applet ?


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 philobedo
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Avril 2004
    Messages : 80
    Par défaut [Date] simpleDateFormat et applet ?
    Bonjour à tous

    Alors voila j'ai une chaine qui contient une date de la forme yyyy-MM-dd hh:mm:ss. Je veux convertir ce String en Date, voici ce que je fais :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    ParsePosition pPos = new ParsePosition(0);
    SimpleDateFormat  dateFormat = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
    try {
    valDateXSecond[0] = new Second(dateFormat.parse("2008-10-01 00:40:12",pPos));
    catch (NullPointerException e) {
            System.out.println(e.getMessage());
            e.printStackTrace();
    }
    catch (Exception e) {
            System.out.println(e.getMessage());
            e.printStackTrace();
    }
    Ce code est dans la méthode init(), c'est pour une applet.
    Lorsque j'éxécute mon applet j'ai l'exception suivante :

    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
    Wed Oct 01 00:40:12 CEST 2008
    NULL pointer
    null
    java.lang.NullPointerException
    	at java.util.Calendar.setTime(Unknown Source)
    	at org.jfree.data.time.Second.<init>(Second.java:157)
    	at org.jfree.data.time.Second.<init>(Second.java:146)
    	at AppletGraph.init(AppletGraph.java:88)
    	at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
    	at java.lang.Thread.run(Unknown Source)
    java.lang.NullPointerException
    	at AppletGraph.init(AppletGraph.java:114)
    	at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
    	at java.lang.Thread.run(Unknown Source)
    Exception : java.lang.NullPointerException
    Je ne comprend pas où est le problème ?
    Le system.out m'affiche la date correcte .

    Merci d'avance pour vos réponse.
    A+
    Philobedo

  2. #2
    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
    Attention, SimpleDateFormat gère beaucoup de formats de date différents, et il faut donc bien vérifier la doc pour être sûr d'utiliser le bon.

    Ici, pour l'heure tu utilises le format "hh". Ça c'est le format pour l'heure de la demi-journée, de 1 à 12, avec laquelle on est censé préciser AM ou PM. Bref, déjà ce n'est pas ce que tu veux, mais aussi, dans cette notation, l'heure est de 1 à 12. Jamais 0. Un "00" dans le champ heure est donc une erreur de format.

    Comme l'indique la doc de la méthode parse(String, ParsePosition), s'il y a une erreur de parsing, la méthode renvoie null, et modifie le ParsePosition pour indiquer où est l'erreur.

    Autrement dit, ta méthode parse renvoie null, et tu t'en sers pour construire une Second, qui ne peut pas être construite avec une Date null, et ça fait NullPointerException.

    Solution : utiliser le format "yyyy-MM-dd HH:mm:ss"
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre confirmé Avatar de philobedo
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Avril 2004
    Messages : 80
    Par défaut
    Merci thelvin

    Effectivement l'erreur venait de là !
    J'ai changé mon format et l'applet se lance correctement maintenant.

    Merci!
    a+
    Philobedo

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

Discussions similaires

  1. parse date SimpleDateFormat
    Par BigBarbare dans le forum Général Java
    Réponses: 2
    Dernier message: 21/09/2009, 13h15
  2. Validité de dates - SimpleDateFormat
    Par pjb dans le forum Collection et Stream
    Réponses: 4
    Dernier message: 20/04/2007, 13h39
  3. Problème format date - SimpleDateFormat inversion mois/jour
    Par juanqui dans le forum Servlets/JSP
    Réponses: 8
    Dernier message: 07/02/2007, 14h37
  4. convertir string en date (SimpleDateFormat)
    Par mnemonic78 dans le forum Langage
    Réponses: 5
    Dernier message: 04/01/2007, 16h41
  5. Votre avis : GregorianCalendar ou Date (SimpleDateFormat) ?
    Par MathiasM dans le forum Collection et Stream
    Réponses: 3
    Dernier message: 28/09/2004, 16h43

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