Estou com o seguinte problema ...
Tenho um campo Jtextfield que recebe valor numerico
se o valor do campo estiver 400,00 ele não parse para double
se o valor do campo estiver 400,55 ele passa ....
e como eu faço para mudar essa , para .
veja o meu codigo fonte
String s_sldad = Variav_Sldad.getText(); //Variav String Label passa pela função parse.Double
String s_chqrs = Variav_Chqrs.getText(); //Variav String Jtextfield com o separador decimal , nao passa pela parse.Double
String s_entrd = Variav_Entrd.getText();
String s_saidd = Variav_Saidd.getText();
double v_sldad = Double.parseDouble(s_sldad);
JOptionPane.showMessageDialog(null, s_chqrs);
double v_chqrs = Double.parseDouble(s_chqrs);
JOptionPane.showMessageDialog(null, v_chqrs);
double v_entrd = Double.parseDouble(s_entrd);
JOptionPane.showMessageDialog(null, v_entrd);
double v_saidd = Double.parseDouble(s_saidd);
JOptionPane.showMessageDialog(null, v_saidd);
double v_saldd = (v_sldad + v_chqrs) + (v_entrd - v_saidd);
JOptionPane.showMessageDialog(null, v_saldd);
Variav_Saldd.setText(String.valueOf(v_saldd));
Variav_Chqdv.requestFocus();
Faça o seguinte:
String s_sldad = Variav_Sldad.getText().replace(',', '.');
// continua
Isso troca a vírgula pelo ponto, permitindo a conversão.
e ai cara, blz
vc pode tentar fazer dessa maneira:
double numero = Double.parseDouble(campoTexto.getText().replace(',','.'));
JOptionPane.showMessageDialog(null, numero);
Na 1ª linha vc criar a variavel do tipo double e atribui à ela o campo texto onde no replace()… é a parte que troca a vírgula pelo ponto.
espero ter ajudado, flw abrax
rod
Dezembro 4, 2009, 9:38am
#4
Voce pode utilizar um Format como NumberFormat e fazer o parse da String com o método parseObject( String source ).
Format como NumberFormat e fazer o parse da String
tem como vc mostar um exemplo aqui no post