Formatar campo preço Java Swing

30/11/2016

0

Pessoal, estou fazendo um programa em java, preciso formatar um campo preço de forma que ele mostre no campo a máscara "R$ ###,##" para o usuário mas no banco armazene o valor real. Estou fazendo a máscara em outros campos como o exemplo do campo CPF:

try {
	        campoCPF.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory(new javax.swing.text.MaskFormatter("###.###.###-##")));
		} catch (java.text.ParseException ex) {
	        ex.printStackTrace();
	    }


Mas, o CPF eu posso armazenar dessa forma no banco pois é String, já o preço não posso, pois pretendo fazer contas com os valores.

Alguém poderia me ajudar a entender como faço?

Desde já agradeço.
Beatriz Silva

Beatriz Silva

Responder

Post mais votado

30/11/2016

Boa noite Beatriz.
Já tentou salvar convertendo para Double?

Double.parseDouble(textFieldValor.getText().replace('''','''', ''''.'''').substring(3))

O código acima troca a vírgula pelo ponto e desconsidera o simbolo monetário R$.

Osmar Filho

Osmar Filho
Responder

Mais Posts

03/12/2016

Beatriz Silva

Boa tarde Osmar,

Muito obrigada! Ajudou muito!

Eu estava convertendo para Double, mas sem usar o replace tava dando erro na hora de persistir no banco por conta da vírgula. Da forma que você ensinou deu certo.

Obrigada!
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar