Probleme d'affchage

Messages postés
114
Date d'inscription
dimanche 25 septembre 2005
Statut
Membre
Dernière intervention
11 février 2009
-
Messages postés
114
Date d'inscription
dimanche 25 septembre 2005
Statut
Membre
Dernière intervention
11 février 2009
-
salut,
Voilà mon pb:
Je saisie un double dans un jTextField1, j'effectue une operation de multiplication par une constante, je clique sur un bouton et  j'obtient le resultat dans un jTextField2 en utilisant NumberFormat parceque je je veux fixer le nombre de chiffres apres la virgule a 2.et puis je veux encore effectuer un traitement sur le resultat mais j'ai un probleme car la representation du resultat dans le jtextField2 est differente(il y un nombre avec des espaces).voila mon code :
// le  bouton affiche le resultat : 

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
 double d=Double.parseDouble(jTextField1.getText());
        d*=1.236;
        NumberFormat f=NumberFormat.getInstance();
        f.setMaximumFractionDigits(2);
        String s=f.format(d);
        jTextField2.setText(s);
    }
et puis se pose le probleme lorsque je veux recuperer le resultat jTextField2.getText().

10 réponses

Messages postés
764
Date d'inscription
mardi 25 mai 2004
Statut
Membre
Dernière intervention
8 mars 2011
8
sur la Stirng récup tu fé trim() ce qui te vire les espaces puis
Double.parseDouble(taString).doubleValue() ce qui te rend le double initial !
Messages postés
114
Date d'inscription
dimanche 25 septembre 2005
Statut
Membre
Dernière intervention
11 février 2009

salut,


ça ne marche pas,  j'ai essaye de creer un autre jTextField pour verifier si les espaces ont ete elimines mais le probleme persiste.
Messages postés
764
Date d'inscription
mardi 25 mai 2004
Statut
Membre
Dernière intervention
8 mars 2011
8
tu veux faire quoi avec la String récup par jTextField2, donne un exemple précis de ce que te rend jTextField2.getText() stp !
++ Toinou
Messages postés
114
Date d'inscription
dimanche 25 septembre 2005
Statut
Membre
Dernière intervention
11 février 2009

Une foi le resultat affiché dans le jTextField2 sous la forme: 25 589 69,23 par exemple(a noter qu'il affiche ',' a la place de . ) supposons que veux ajouter une valeur entiere par exemple 100 a ce resultat et l'afficher dans un autre jTextField pour des raisons d'un traitement specifique.voilà mon code : 
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
try{
        String s1=jTextField2.getText().trim(); // je recupere le resultat en essayant d'eliminer les ' '.
        double d1=Double.valueOf(s1).doubleValue(); // je convertit le resultat en double.
        d1+=100;      // j'ajoute 100
        jTextField3.setText(Double.valueOf(d1).toString(d1));  // je reaffiche dans un autre jTextfield
       }catch(NumberFormatException e)
{JOptionPane.showMessageDialog(this,"Erreur","ERREUR",JOptionPane.ERROR_MESSAGE);System.exit(1);
}
    }                 
mais j'ai toujours un Numberformat exception qui se declenche.                      
Messages postés
764
Date d'inscription
mardi 25 mai 2004
Statut
Membre
Dernière intervention
8 mars 2011
8
Cadeau !

String s = "225 123,26 ";
String s2 = s.replaceAll(",",".").replaceAll(" ","");
double d = Double.valueOf(s2).doubleValue();
Messages postés
114
Date d'inscription
dimanche 25 septembre 2005
Statut
Membre
Dernière intervention
11 février 2009

salut,


ça ne marche toujours pas.
Messages postés
764
Date d'inscription
mardi 25 mai 2004
Statut
Membre
Dernière intervention
8 mars 2011
8
???????
j ai testé le code que j t ai filé et ca marche !!!
si ton truc c est de virer les espaces et transformer la virgule en point alors ca devrai marcher,
dans quel cas de figure ca marche pas???
avec quelle valeur de s1 t as le numberformatexception ?? j y pense, j espere que t as pas un retour chariot dansl histoire sinon faudra virer les \n aussi
Messages postés
114
Date d'inscription
dimanche 25 septembre 2005
Statut
Membre
Dernière intervention
11 février 2009

Les espaces ne sont pas eliminés.j'ai meme verifie mais le mecanisme fonctionne dans une application console.Moi j'utilise une interface comme tu le sais.
Messages postés
764
Date d'inscription
mardi 25 mai 2004
Statut
Membre
Dernière intervention
8 mars 2011
8
ben disons qu avec replaceAll(" ","") j vois pas comment tu peux avoir des espaces dans ta chaine, mon conseil : met toi en debug et regarde ce que tu récup vraiment
Messages postés
114
Date d'inscription
dimanche 25 septembre 2005
Statut
Membre
Dernière intervention
11 février 2009

Je la trouva!!!


il fallait utiliser DecimalFormat du package java.text.


decimalformat df=new decimalformat(" format à definir");


merci quand meme!!!a +