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

avec Java Discussion :

Fonction capter les nombres


Sujet :

avec Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    286
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Avril 2013
    Messages : 286
    Par défaut Fonction capter les nombres
    bonjour
    j'ai une fonction java qui lit des string buffer ensuite prendre les numéros après les (.) et les (VL)
    mais lorsque j'appelle cette fonction çà me donne des erreurs:
    Voilà la fonction:
    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
     
    public Integer vlan(StringBuffer sb) {
         try{   
         String temp = sb.toString();
            if (temp.indexOf("Vl") >= 0) {
                int pos = temp.indexOf("Vl") + 2;
                String data = temp.substring(pos, temp.length());
                return Integer.parseInt(data.trim());
            } else {
                int pos = temp.lastIndexOf(".") + 1;
                String data = temp.substring(pos, temp.length());
               try{
                return Integer.parseInt(data.trim());         
            } catch (Exception e) {
                e.printStackTrace();
            }
               }
            } catch (Exception e) {
                e.printStackTrace();
            }
            return null;
        }
    et voilà les erreurs:
    java.lang.NumberFormatException: For input string: ""
    at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
    at java.lang.Integer.parseInt(Integer.java:504)
    at java.lang.Integer.parseInt(Integer.java:527)
    at Interfaces.Telnet_VLAN.vlan(null

  2. #2
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    java.lang.NumberFormatException: For input string: ""
    C'est que la chaîne "" n'est pas un format de nombre valide, il te faut une chaîne contenant un entier comme "666".

    A+.

  3. #3
    Membre éclairé
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    286
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Avril 2013
    Messages : 286
    Par défaut
    j'ai pas compris moi la méthode renvois tous les nombres après les . et les VL
    pourquoi juste 3 entiers ?!

  4. #4
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    666 n'est qu'un exemple, tu dois passer une chaîne ne contenant que des chiffres. Or que dans ton cas, tu passes une chaîne vide.

  5. #5
    Membre éclairé
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    286
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Avril 2013
    Messages : 286
    Par défaut
    et alors que dois je faire car cette fonction marchait autrefois juste j'ai pas fait des return j'ai ajouté les résultats dans un tableau donc isi je veux just parcourir un texte et capter les numéros

  6. #6
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    parseInt a toujours marché depuis la nuit des temps, à toi de s'assurer que le paramètre passé (data.trim()) soit au bon format attendu.

  7. #7
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    Si t'as bien lu ma réponse, tu aurais pu résoudre plus tôt
    Citation Envoyé par andry.aime Voir le message
    tu dois passer une chaîne ne contenant que des chiffres. Or que dans ton cas, tu passes une chaîne vide.

  8. #8
    Membre éclairé
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    286
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Avril 2013
    Messages : 286
    Par défaut
    Oui c'est vrais juste j'étais concentré sur parcourir les sb et j'ai pas traité bien les chaines

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

Discussions similaires

  1. Réponses: 12
    Dernier message: 16/01/2011, 15h36
  2. Fonction qui définie les nombres des chiffres
    Par aliassaf dans le forum MATLAB
    Réponses: 3
    Dernier message: 02/04/2009, 01h38
  3. Fonction retrouvant les nombres narcissiques
    Par shepounet dans le forum Général Python
    Réponses: 14
    Dernier message: 27/10/2007, 18h08
  4. Réponses: 3
    Dernier message: 23/08/2007, 00h39
  5. fonction enlever les zero en fin de nombre decimal
    Par calitom dans le forum Langage
    Réponses: 2
    Dernier message: 16/05/2007, 17h01

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