Problemas com parseFloat

3 respostas
vertuam

Ola All

Estou com um problema já ha alguns dias que ta tirando o meu sono, preciso efetuar alguns calculos em cima de valores que estão contidos em JFormattedTextField e faço da seguinte forma:

float vIptu = Float.parseFloat(ValorIptu.getText().toString());

Ai me retorna a seguinte Exception

Alguem saberia me dizer onde estou errando,

Muito Obrigado

Renato

3 Respostas

cu_ringa

eu acho q e pq vc ta colocando virgula, ja q o sistema americano e diferente do brasileiro.vc tera q inverter se usar o sistema default onde e ponto coloca-se virgula e onde e virgula coloca-se ponto:

Brasileiro: 3.256,00
Americano:3,365.00

O metodo getText(), ja nao retorna uma String??? Entao n precisa fazer toString().

vertuam

Valeu cu_ringa

Vc estava certo, o toString() tbm tava a mais.

t+

Renato

T

Como você vê, parseFloat é meio perigoso - você não sabe que Regional Settings estarão em vigor no seu cliente. Em vez disso, tente usar algo mais complicado, como java.util.Locale.
Aí você força o “locale” para pt-BR (português - Brasil). (Veja java.util.Locale, método setDefault).

Criado 28 de março de 2005
Ultima resposta 28 de mar. de 2005
Respostas 3
Participantes 3