Se o conteúdo do seu textfield for “2.345,67”, então você quer receber o valor 2345.67 dentro de seu preço, não?
Faça o seguinte:
importjava.util.*;importjava.text.*;...Localept=newLocale("pt","PT");// use "pt", "BR" se no Brasil, "pt", "PT" se em Portugal, etc.NumberFormatnf=NumberFormat.getInstance(pt);....try{cat.setPreco(nf.parse(jTextField2.getText()));}catch(ParseExceptionex){// tratar aqui o erro de formatação}
O
others
Hey mas para usar dessa forma tenho de criar um metodo do tipo number?
é que está dando erro.
não há forma mais simples como se usa para os integer ?
T
thingol
Ah, desculpe (é que não testei.) O certo é:
importjava.util.*;importjava.text.*;...Localept=newLocale("pt","PT");// use "pt", "BR" se no Brasil, "pt", "PT" se em Portugal, etc.NumberFormatnf=NumberFormat.getInstance(pt);....try{cat.setPreco(nf.parse(jTextField2.getText()).doubleValue());// ou floatValue se o tipo do parâmetro for float, não double}catch(ParseExceptionex){// tratar aqui o erro de formatação}
Não se esqueça: nunca use float para mexer com preços. Prefira usar double devido aos problemas de precisão.
O
others
muito obrigado thingol
ddmizu
others:
Hey mas para usar dessa forma tenho de criar um metodo do tipo number?
é que está dando erro.
não há forma mais simples como se usa para os integer ?
Deve estar dando erro pq vc nao fez os imports q o cara colcou. Vc viu lá?
import java.util.*;
import java.text.*;
Outra coisa, o cara te mostrou como fazer do jeito profissional! Pra vc mostrar pro seu professor e ele falar: ‘Muito bom’. Mas se vc quiser fazer de um jeito que ele olhe e simplesmente diga ‘ok, funcionou’, faça assim:
Float.parseFloat(jTextField2.getText());
**Só lembrando q se vc for usar isso pra mexer com preço, então deve utilzar Double ao inves de float. Use! Acredite, vai te economizar mto tempo com futuros problemas ;). No caso de utilizar double, fica assim o código:
Double.parseDouble(jTextField2.getText());
O
others
ddmizu por acaso dessa forma ja tinha tentado mas nao era isso que queria para o meu problema,
e não na é para mostrar a nenhum professor, por acaso era uma duvida simples mas como nunca tinha
precisado de utilizar nos meus programas nao sabia, mas obrigado na msm