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 :

[Débutant] Conversion d'un String en Int


Sujet :

Langage Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 109
    Points : 71
    Points
    71
    Par défaut [Débutant] Conversion d'un String en Int
    Bonjour, j'ai un p'ti probleme de conversion en fait je donne un string a la methode Integer.parseInt et il me renvoie l'exception
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    	try{
    	//nombre est un char[]
    	    String t=new String(nombre);
    	    System.out.println(t);//affiche mon string
    	    int resultat=Integer.parseInt(t);
    	    System.out.println("c bon!!!");
    	    return true;
    	}catch(NumberFormatException e){
    	    System.out.println(e.getMessage());
    	    System.out.println("tu t vu kan ta bu!");
    	}
    Merci bcp

  2. #2
    Membre régulier Avatar de spoutyoyo
    Inscrit en
    Avril 2004
    Messages
    116
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 116
    Points : 83
    Points
    83
    Par défaut
    L'exception renvoyée ne correspond pas à ton code.
    Peux tu montrer l'affichage que tu obtiens?
    http://www.stop-monsanto.qsdf.org/

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 109
    Points : 71
    Points
    71
    Par défaut
    Suppossons que je veux afficher la chaine nombre="12"
    A l'affichage j'ai
    12
    For input string: "12"
    tu t vu kan ta bu
    le For input string est le resultat de mon System.ou.println(e.getMessage())

  4. #4
    Membre régulier Avatar de spoutyoyo
    Inscrit en
    Avril 2004
    Messages
    116
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 116
    Points : 83
    Points
    83
    Par défaut
    voilà le code que j'ai testé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    char[] nombre = {'1','2'};
            try{
                //nombre est un char[]
                String t=new String(nombre);
                System.out.println(t);//affiche mon string
                int resultat=Integer.parseInt(t);
                System.out.println("c bon!!!");
            }catch(NumberFormatException e){
                System.out.println(e.getMessage());
                System.out.println("tu t vu kan ta bu!");
            }
    et j'obtiens
    Es tu sùr que nombre soit initialiser comme il faut?
    Sinon le code que tu as fournit est bon.
    http://www.stop-monsanto.qsdf.org/

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 109
    Points : 71
    Points
    71
    Par défaut
    En fait je lui donne une chaine récupéré dans un fichier texte
    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
     
    	int j=0;
    	char[]nombre=new char[10];
    	part=st.nextToken();
    	//transforme mon String en char[]
    	test=part.toCharArray();
    	for(int i=0;i<test.length;i++){
    	    if(i>1){
    		nombre[j]=test[i];
    		//Construction de mon nombre car part doit etre de la forme #R12 et je recupere "12"
    		j++;
    		  }
    		System.out.println(nombre);
     
    	    }
     
    	} 
    	try{
    	    String t=new String(nombre);
    	    t=String.valueOf(nombre);
    	    int a= convertit("12");
    	    System.out.println(t);
    	    int resultat=Integer.parseInt(t);
    	    System.out.println("c bon!!!");
    	    return true;
    	}catch(NumberFormatException e){
    	    System.out.println(e.getMessage());
    	    System.out.println("tu t vu kan ta bu");
    	}
    En ca marche pas ?ca dois etre mon String qui va pas alors?
    j'ai testé pour voir si c'était un probleme de '\0' ajouté à la fin de mon string mais non c'est pas ca non plus
    Merci bcp pour ton aide

  6. #6
    Membre régulier Avatar de spoutyoyo
    Inscrit en
    Avril 2004
    Messages
    116
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 116
    Points : 83
    Points
    83
    Par défaut
    Là je ne vois pas.
    Essaye de vérifier au fur et à mesure avec des println ce qui se passe, je vois que ça.
    http://www.stop-monsanto.qsdf.org/

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 109
    Points : 71
    Points
    71
    Par défaut
    J'ai imprimé le String juste avant de faire appel a Integer.parseInt()
    et c'est bien un nombre mais ca leve l'exception je sais pas pourquoi
    donc pour l'instant je suis obligé de faire caractére par caractére c pas très pratique mais ca a l'avantage de marcher

  8. #8
    Membre éclairé

    Développeur Web
    Inscrit en
    Mars 2002
    Messages
    412
    Détails du profil
    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2002
    Messages : 412
    Points : 657
    Points
    657
    Par défaut
    Si tu as un débogueur, tu pourras regarder le contenu de ton String en détail. Ou bien tu te fais une méthode qui balaye ta String caractère par caractère et qui affiche chaque caractère accompagné de son numéro. Du style :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    for (int i=0; i < str.length(), i++) {
      System.out.print(" " + str.charAt(i) + "(" + ((int ) str.charAt(i)) + ")");
    }
    System.out.println();

  9. #9
    Expert confirmé
    Avatar de Katyucha
    Femme Profil pro
    DevUxSecScrumOps Full Stack Bullshit
    Inscrit en
    Mars 2004
    Messages
    3 287
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Irlande

    Informations professionnelles :
    Activité : DevUxSecScrumOps Full Stack Bullshit

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 287
    Points : 5 075
    Points
    5 075
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    int resultat=Integer.parseInt(t.trim());
    Au cas ou, un petit espace traine dans le coin
    Grave urgent !!!

  10. #10
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    109
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 109
    Points : 71
    Points
    71
    Par défaut

    Merci Katyucha!
    Lumineuse idée!!!
    Ca marche nickel maintenant meme si je ne comprends pas pourquoi il y avait des espaces qui trainaient.
    Merci tout le monde pour votre aide

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

Discussions similaires

  1. Conversion de donnée string vers int
    Par reptooyep dans le forum Bibliothèques
    Réponses: 0
    Dernier message: 05/06/2013, 22h40
  2. Servlet: problème de conversion d'un string en INT
    Par keumlebarbare dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 28/11/2006, 10h44
  3. Réponses: 2
    Dernier message: 21/06/2004, 15h55
  4. [FLASH MX 2004] conversion string en int.
    Par calfater dans le forum Flash
    Réponses: 3
    Dernier message: 26/05/2004, 15h00
  5. [débutant] conversion int en hexa
    Par sergoid dans le forum C++Builder
    Réponses: 6
    Dernier message: 16/05/2003, 11h11

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