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

Documents Java Discussion :

[debutant] Try catch lors de la création d'un Maskformatter


Sujet :

Documents Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 209
    Par défaut [debutant] Try catch lors de la création d'un Maskformatter
    Bonjour
    j'ai crée un MaskFormatter et j'ai remarqué que pour cela fonctionne il faut placer l'opérateur new dans un bloc try catch
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     try {
        formatter = new MaskFormatter(#####);
      } catch (java.text.ParseException exc) {
            System.err.println("formatteur est mauvais: " + exc.getMessage());
            System.exit(-1);
      }
    quelque soit les caractères placés en argument dans le constructeur je n'arrive jamais a passer dans le catch Pourquoi mettre alors un bloc try catch ?

    Merci de bien vouloir m'expliquer

  2. #2
    Membre éclairé
    Avatar de rozwel
    Inscrit en
    Mars 2002
    Messages
    324
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 324
    Par défaut
    Toujours jeter un oeil dans l'API-doc quand c'est comme ça: http://java.sun.com/j2se/1.5.0/docs/...va.lang.String)

    Grâce à cette doc, tu n'as pas besoin de "deviner" que le constructeur est susceptible de lancer une exception: c'est écrit dessus. Après pour savoir dans quel cas l'exceptions est lancée, c'est pareil: "si le masque ne contient pas de caractères de masque valides". La liste des caractères valides est donnée dans la doc de la classe un peu plus haut.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 209
    Par défaut
    pour répondre a Sébastien ARBOGAST j'ai bien lu la doc de sun mais la liste des caractères valides n'a aucune effets vous pouvez mettre dans le masque n'importe quoi et le catch n'est jamais utilisé

    par exemple vous pouvez faire formatter = new MaskFormatter(#+=@####) sans pour cela lever une exception
    c'etait le but de ma question
    merci d'y répondre faites vous même le test

  4. #4
    Membre éclairé
    Avatar de rozwel
    Inscrit en
    Mars 2002
    Messages
    324
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 324
    Par défaut
    La doc dit bien que l'exception est lancée si le masque NE CONTIENT PAS de caractères corrects. Or votre masque contient au moins un # qui est un caractère de masque correct. Donc normal. Essayez un masque avec uniquement des caractères qui ne sont pas dans la liste pour voir...

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 209
    Par défaut
    Bonjour
    je viens de faire le test suivant formatter = new MaskFormatter("@@@@") et je n'est toujours pas d'exception de levée
    idem avec formatter = new MaskFormatter("+=@&") c'est a n'y rien comprendre
    merci de vous occuper de ce Pb

  6. #6
    Membre éclairé
    Avatar de rozwel
    Inscrit en
    Mars 2002
    Messages
    324
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 324
    Par défaut
    Quelle version du JDK utilisez-vous? 1.4 ou 5.0?
    Parce que d'après les sources du JDK, il y a eu pas mal de changements entre ces deux versions et effectivement dans la 1.4 il ne semble pas y avoir de code qui jette une ParseException. Celà dit dans la 5.0, cette exception semble pouvoir être lancée. A essayer avec un JDK 5.0.

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

Discussions similaires

  1. [Debutant] Try-Catch général
    Par cs_ntd dans le forum Débuter
    Réponses: 6
    Dernier message: 28/09/2009, 02h26
  2. Try Catch lors d'un stop [Pratiques]
    Par Jimalexp dans le forum Général Java
    Réponses: 2
    Dernier message: 16/02/2009, 21h50
  3. Réponses: 3
    Dernier message: 13/12/2006, 16h01
  4. [DEBUTANT] Try catch
    Par flzox dans le forum Langage
    Réponses: 4
    Dernier message: 24/01/2006, 00h47
  5. [debutant sous eclipse] surround with try catch
    Par Alwin dans le forum Eclipse Java
    Réponses: 3
    Dernier message: 26/06/2004, 20h03

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