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

AWT/Swing Java Discussion :

java.lang.NumberFormatException: For input string: ""


Sujet :

AWT/Swing Java

  1. #1
    Membre actif
    Inscrit en
    Juin 2005
    Messages
    578
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 578
    Points : 240
    Points
    240
    Par défaut java.lang.NumberFormatException: For input string: ""
    Bonjour,je suis vraiment perdu car je ne sais plus quoi faire.
    J'ai une exception java.lang.NumberFormatException: For input string: "" dans le code suivant:
    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
     
    public void actionPerformed(ActionEvent ev) {
     
     
            if(ev.getSource().equals(boutonOk)){
                Etudiant etud=new Etudiant();
                int id = 0;
     
     
    //////////////////////////////////////////////////////////////////////
    ////////////L'exception est levée quand j'insére la ligne suivante 
     
                    id = Integer.parseInt(jtNum.getText());    
    ////////////////////////////////////////////////////////////////////////
     
                try {
     
                    etud.setNum(id);            
                    etud.setNom(jtNom.getText());
                    etud.setPrenom(jtPrenom.getText());
     
     
                    FileOutputStream fos=new FileOutputStream("etudiant.txt",true);
                    ObjectOutputStream oos=new ObjectOutputStream(fos);
                    oos.writeObject(etud);
                    oos.flush();
                    oos.close();
                       JOptionPane.showMessageDialog(null,"Sauvegarde réussie!");
                       jtNum.setText(null);
                       jtNom.setText(null);
                       jtPrenom.setText(null);
                } catch (Exception e) {
     
                     JOptionPane.showMessageDialog(null,"Sauvegarde non réussie!");
                }
            }
     
    if(ev.getSource().equals(boutonAfficher)){
     
     
     
                try {
     
                    FileInputStream fis=new FileInputStream("etudiant.txt");
                    ObjectInputStream ois=new ObjectInputStream(fis);
     
                    Etudiant etud= (Etudiant)ois.readObject();
     
    //////////////////////////////////////////////////////////////////////
    ////////////une autre exception est levée quand j'insére la ligne suivante 
    //////////////////////////////////////////////////////////////////////
     
     
                    String a = Integer.toString(etud.getNum());
     
                    ois.close();
                    fis.close();
                    jtNum.setText(a);
                    jtNom.setText(etud.getNom());
                    jtPrenom.setText(etud.getPrenom());
     
                } catch (Exception e) {
                     JOptionPane.showMessageDialog(null,"Impossible d'afficher!");
                }
    }
    Merci

  2. #2
    Membre chevronné Avatar de guigui5931
    Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2006
    Messages
    1 667
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 667
    Points : 2 232
    Points
    2 232
    Par défaut
    Ca vient du fait que tu essaye de convertir le contenu de jtNum.getText() en nombre et apparement jtNum.getText() vaut une chaine vide ("").
    autant l'hiver éclate que l'hétéroclite
    le vrai geek c'est celui qui croit qu'il y a 1024 mètres dans un kilomètre

  3. #3
    Membre actif
    Inscrit en
    Juin 2005
    Messages
    578
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 578
    Points : 240
    Points
    240
    Par défaut
    OK je vois,mais le problème est que si je ne convertis pas jtNum.getText() en entier,la méthode(setNum) est souligné en rouge car elle prend en paramètre un entier.
    Ensuite je ne comprends pas pourquoi jtNum.getText() serait vide puisque je récupère sa valeur dans un formulaire.
    Bizarre hein?
    Sinon voici la classe qui contient la méthode setNum(),c'est peut être la le problème:


    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
     package essai;
     
    import java.io.Serializable;
     
    import javax.swing.JOptionPane;
     
    public class Etudiant implements Serializable{
     
         private String nom, prenom;
            private int num;
    /////Le constructeur/////////////
     
            public Etudiant() 
               {
     
            }
    /////////////////////////////////////////
     
            public int getNum() {
                return num;
              }
     
            public void setNum(int num) {
                this.num = num;
            }
     
        public String getNom() {
            return nom;
        }
        public void setNom(String nom) {
            this.nom = nom;
        }
        public String getPrenom() {
            return prenom;
        }
        public void setPrenom(String prenom) {
            this.prenom = prenom;
        }
     
     
    }

  4. #4
    Membre actif
    Inscrit en
    Juin 2005
    Messages
    578
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 578
    Points : 240
    Points
    240
    Par défaut
    Wai t'avais raison,ça marche,j'aurais pas du initialiser id à 0.
    Maintenant il reste le 2e probleme concernant la ligne suivante:

    String a = Integer.toString(etud.getNum());

    Ici la méthode getNum renvoit aussi un entier.Donc je dois convertir l'entier en string pour pouvoir l'insérer dans le setText(),n'est ce pas?

  5. #5
    Candidat au Club
    Femme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Avril 2019
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 35
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2019
    Messages : 1
    Points : 2
    Points
    2
    Par défaut
    ajouter message dialoge
    if (num_m.equals("")) {
    JOptionPane.showMessageDialog(null, "entré le numéro svp !");
    }
    int id = Integer.parseInt(jText_id.getText());

Discussions similaires

  1. java.lang.NumberFormatException: For input string:
    Par leara500 dans le forum Langage
    Réponses: 3
    Dernier message: 29/04/2013, 19h36
  2. java.lang.NumberFormatException: For input string: "1 629.500"
    Par le_misterioso dans le forum Langage
    Réponses: 18
    Dernier message: 15/04/2011, 19h50
  3. Réponses: 0
    Dernier message: 06/05/2010, 10h43
  4. Réponses: 5
    Dernier message: 20/11/2009, 13h18
  5. Réponses: 1
    Dernier message: 15/01/2009, 11h22

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