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 :

[debutant]J'ai du mal avec la gestion des erreurs


Sujet :

Langage Java

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Juillet 2002
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 84
    Points : 60
    Points
    60
    Par défaut [debutant]J'ai du mal avec la gestion des erreurs
    bonjour,

    suite de mon sudoku pour mon TP...

    dans une classe Fenetre extends JFrame implements ActionListener,FocusListener;

    avec un JTextField 'saisi' et un bouton 'ok'
    et une fonction Charger(Sting Nom) throws IOException


    mon code dans actionPerformed (ActionEvent ev) pour la gestion de mon boutton

    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
    		if (ev.getSource()==ok){
    			if(choix=="Charger"){
    				try {
    					this.Charger();
    				}
    				catch (IOException ioe) {
    					throw new RuntimeException ();
    					}
    //				catch (RuntimeException ioe){
    //					contenu.remove(ok);
    //					contenu.remove(saisi);
    //					saisi.setText("");
    //					texteinfo.setText("Fichier non trouvé");
    //				}
    			}
    tous se passe bien quand j'indique un nom de fichier existant,
    mais quand il n'existe pas un RuntimeException () est généré.

    par la suite j'ai fait la parti qui est en commentaire pour traité l'erreur, mais elle ne fonctionne pas...

    je me suis basé sur la faq et sur les cours de mon prof pour la gestion d'erreur mais je croi que je n'ai pas tous compris...

    merci d'avance pour votre aide...

  2. #2
    Membre expérimenté Avatar de yann2
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2004
    Messages
    897
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 897
    Points : 1 635
    Points
    1 635
    Par défaut
    Bonjour

    Déjà, si tu veux traiter l'erreur directement dans la méthode actionPerformed, tu peux faire comme ceci (logique non ? si non dit le) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    if (ev.getSource()==ok){
    			if(choix=="Charger"){
    				try {
    					this.Charger();
    				}
    				catch (IOException ioe) {
    //					contenu.remove(ok);
    //					contenu.remove(saisi);
    //					saisi.setText("");
    //					texteinfo.setText("Fichier non trouvé");
    //				}
    			}
    Pour la suite qu'est ce qui ne fonctionne pas ? Quelle est l'erreur ? C'est quoi contenu ? C'est quoi ok ? ...

    bon courage

  3. #3
    Membre du Club
    Homme Profil pro
    Inscrit en
    Juillet 2002
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 84
    Points : 60
    Points
    60
    Par défaut
    c'est logique, c'est pas moi qui va te contredire

    mon ancien poste
    (j'aurrai du posté le lien plus tot)

    mon 1 er catch me permet d'utiliser ma fonction Charger() dans actionPerformed.

    j'ai 1 fichier : grille1.

    si j'indique "grille1" dans 'saisi' tous se passe bien et ma grille est chargée.
    mais si mes mains pleinnes de doigts derappent sur le clavier et indique :dsfgjsdlkfhgl
    mon premier catch est pris en compte et me génére une autre erreurs de type :
    Exception in thread "AWT-EventQueue-0" java.lang.RuntimeException

    c'est pour ca que j'ai fais mon 2ème catch...

  4. #4
    Membre expérimenté Avatar de yann2
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2004
    Messages
    897
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 897
    Points : 1 635
    Points
    1 635
    Par défaut
    Re

    Ah ben ouais c'est logique...

    Ton deuxième catch attrape les erreurs lancées par le premier bloc try mais pas les erreurs du bloc catch.

    Donc ceci fonctionne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    if (ev.getSource()==ok){
    			if(choix=="Charger"){
    				try {
    					this.Charger();
    				}
    				catch (IOException ioe) {
    //					contenu.remove(ok);
    //					contenu.remove(saisi);
    //					saisi.setText("");
    //					texteinfo.setText("Fichier non trouvé");
    //				}
    			}
    Pour la solution donnée dans ton dernier post, c'était parce que je pensais que tu ne voulais pas gérer l'exception dans l'actionPerformed (mais où le gérer alors ??? Désolé j'aurai dû t'orienter directement vers cette solution ).

  5. #5
    Membre du Club
    Homme Profil pro
    Inscrit en
    Juillet 2002
    Messages
    84
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 84
    Points : 60
    Points
    60
    Par défaut
    ok merci pour tous fonctionne avec le dernier code. et mon Tp est fini.

    par contre j'ai encor des lacunes avec les erreurs et cette histoire m'a laissé dans le flout .

  6. #6
    Membre expérimenté Avatar de yann2
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2004
    Messages
    897
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 897
    Points : 1 635
    Points
    1 635
    Par défaut
    Re

    Pour les exceptions, va voir

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

Discussions similaires

  1. [ZF 1.7] Zend_Log problème avec la gestion des erreurs
    Par miya dans le forum Zend Framework
    Réponses: 9
    Dernier message: 26/05/2009, 18h33
  2. J'ai du mal avec la Gestion de Jframe
    Par lex13 dans le forum NetBeans
    Réponses: 4
    Dernier message: 05/04/2007, 17h24
  3. Importer avec Ogre / Gestion des collisions
    Par alex6891 dans le forum Ogre
    Réponses: 9
    Dernier message: 19/02/2006, 17h43
  4. Gestion des erreurs avec setjump/longjump
    Par gege2061 dans le forum C
    Réponses: 1
    Dernier message: 05/02/2006, 15h51
  5. Problème avec la gestion des événements
    Par CynO dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 17/10/2005, 10h07

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