Récupérer un String from JTextField et transformer en int [Résolu]

zaynoubagl 60 Messages postés mercredi 11 septembre 2013Date d'inscription 19 octobre 2014 Dernière intervention - 12 sept. 2013 à 14:49 - Dernière réponse : zaynoubagl 60 Messages postés mercredi 11 septembre 2013Date d'inscription 19 octobre 2014 Dernière intervention
- 15 sept. 2013 à 10:02
Bonjour,
je voulais transformer un string dans j text field en int pour faire la division


String s=a.getText();
int i = Integer.parseInt(s);

int r;
r = (int)i / 2;

annuler.setText("r");
je ne trouve pas ou est l'erreur
Afficher la suite 

Votre réponse

12 réponses

BunoCS 14176 Messages postés lundi 11 juillet 2005Date d'inscriptionModérateurStatut 19 octobre 2018 Dernière intervention - 12 sept. 2013 à 15:25
0
Merci
Hello,
Déjà, fais attention: si ta String est mal formattée,
Integer.parseInt()
va te lever une exception.
Ensuite, j'imagine que "annuler" est ton JTextField. Ben, dans ce cas, tu lui affiches le caractère "r" et, à mon avis, ce n'est pas ce que tu veux... Pour afficher la valeur:
annuler.setText(String.valueOf(r));


NB: les balises code, c'est la 4e icone, juste au-dessus de la zone de texte ;)
zaynoubagl 60 Messages postés mercredi 11 septembre 2013Date d'inscription 19 octobre 2014 Dernière intervention - 12 sept. 2013 à 15:47
ça fonctionne pas!
Commenter la réponse de BunoCS
zaynoubagl 60 Messages postés mercredi 11 septembre 2013Date d'inscription 19 octobre 2014 Dernière intervention - 12 sept. 2013 à 15:49
0
Merci
String s=a.getText();
String u = annuler.getText();

if(annuler.getText().equals(s)){

dispose();

}
else{
System.out.println("eeeeeeeeeee"); }
}
j'essay avec ca mais ca fonctionne pas
BunoCS 14176 Messages postés lundi 11 juillet 2005Date d'inscriptionModérateurStatut 19 octobre 2018 Dernière intervention - 12 sept. 2013 à 16:11
Et? Tu cherches à faire quoi avec ça? Cela n'a rien à avoir avec ta demande initiale...
Peux-tu te poser 2 minutes pour réfléchir à ce que tu veux faire, s'il te plaît?
Commenter la réponse de zaynoubagl
zaynoubagl 60 Messages postés mercredi 11 septembre 2013Date d'inscription 19 octobre 2014 Dernière intervention - 12 sept. 2013 à 16:21
0
Merci
regarde moi je suis entraine de faire mon premier programme en java
le principe c'est de recuperer une chaine de nombre afficher dans mon interface graphique et comparrer avec une autre caine inserer par l'utilisateur mais avant de comparrer je voulais faire une fonction simple de division sur la premeiere chaine tu compris
Commenter la réponse de zaynoubagl
BunoCS 14176 Messages postés lundi 11 juillet 2005Date d'inscriptionModérateurStatut 19 octobre 2018 Dernière intervention - 12 sept. 2013 à 16:44
0
Merci
Ok, je veux bien comprendre que tu débutes, pas de souci (je suis passé par là) mais essaie d'être assez précise dans tes demandes afin que nous puissions t'aider efficacement.

Si je résume:
// récupération des chaines
String s = a.getText(); 
String u = annuler.getText();

if(s != null && !s.isEmpty()) { // test de chaine vide
    // tentative de calcul
    try{
        int i = Integer.parseInt(s);
        int r = i/2;

        // test de chaine
        String strR = String.valueOf(r);  // à vérifier s'il ne peut y avoir d'exceptions
        if (strR.equals(u)){
            // chaines identiques
        } else {
            // chaines différentes
        }
    }
    catch (Exception e) {
        // exception à traiter
    }
}

Attention! Je n'ai pas testé (pas d'environnement de dev sous la main)
Commenter la réponse de BunoCS
zaynoubagl 60 Messages postés mercredi 11 septembre 2013Date d'inscription 19 octobre 2014 Dernière intervention - 12 sept. 2013 à 16:53
0
Merci
merci pour ton aide je suis très fière
mais ca marche pas encore ;
Commenter la réponse de zaynoubagl
zaynoubagl 60 Messages postés mercredi 11 septembre 2013Date d'inscription 19 octobre 2014 Dernière intervention - 12 sept. 2013 à 17:19
0
Merci
tring s = adr_mac.getText(); 
String u = code_mac.getText();

if(s != null && !s.isEmpty()) { 
 
    try{
        int i = Integer.parseInt(s);
        int r = (i/2);

        // test de chaine
        String strR = String.valueOf(r);  
        if (strR.equals(u)){
               dispose();
        } else {
           System.out.println("erreur");
        }
    }
    catch (Exception e) {
        System.out.println("erreur");
        
    
    }

elle affiche le message de l'exeption
Commenter la réponse de zaynoubagl
BunoCS 14176 Messages postés lundi 11 juillet 2005Date d'inscriptionModérateurStatut 19 octobre 2018 Dernière intervention - 12 sept. 2013 à 17:32
0
Merci
Si, dans s, tu récupères l'adresse mac, c'est normal. Tu ne peux pas convertir une adresse mac en décimal, ça n'a pas de sens.
De là à la diviser par 2...je ne comprends pas ce que tu cherches à faire en fait...
Commenter la réponse de BunoCS
zaynoubagl 60 Messages postés mercredi 11 septembre 2013Date d'inscription 19 octobre 2014 Dernière intervention - 12 sept. 2013 à 19:12
0
Merci
oui après la recupiration de @ mac j'ai supprimer les lettre par un fonction je laisse seullement les chiffre tu compris
Commenter la réponse de zaynoubagl
BunoCS 14176 Messages postés lundi 11 juillet 2005Date d'inscriptionModérateurStatut 19 octobre 2018 Dernière intervention - 12 sept. 2013 à 19:27
0
Merci
Oui...non....euh...pas trop en fait.
Je ne sais pas ce que tu essaies de faire, mais ce n'est pas la bonne méthode. Même si tu enlèves les lettres de l'adresse mac, tu as de forte chance pour que le nombre résultant soit trop grand pour être stocker dans un int...
zaynoubagl 60 Messages postés mercredi 11 septembre 2013Date d'inscription 19 octobre 2014 Dernière intervention - 15 sept. 2013 à 10:02
oui j'ai compris
je souhaite sécuriser mon application java (jar) par une methode bien précise.
l'idée :
quant un utilisateur lancer l'installation de l'application dans leur PC une adresse mac s'affiche dans un champ de texte
l'utilisateur demande un code pour accéder
moi j'essaye de faire une simple fonction sur cette adresse pour donner un autre code a l'utilisateur si le code d'accée correcte il installe l'application sinon il ne peut pas .
Commenter la réponse de BunoCS

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.