Boa noite amigos, por favor peço ajuda a voçes para me ajudarem a solucionar esses erros. Estou com dificuldade em solucionalo, ja revisei o codigo , e chegue nessa versão, que postei abaixo, estou fazendo com annotations. Usando banco de dados mysql. O erro ocorre quando eu vou salvar. Por favor me ajudem.
Erro ao salvar
5 Respostas
linha 1085.
produto.setPrecoVenda(Double.parseDouble(txtFieldPrecoVenda.getText()));
ta tentando dar um parse num valor com virgula, sendo que o padrao USA, do double é com “.” exemplo 2.37
usa um DecimalFormat pra fazer o trabalho pra vc.
linha 1085.produto.setPrecoVenda(Double.parseDouble(txtFieldPrecoVenda.getText()));ta tentando dar um parse num valor com virgula, sendo que o padrao USA, do double é com “.” exemplo 2.37
usa um DecimalFormat pra fazer o trabalho pra vc.
Bom dia, amigo.
Como eu posso usar DecimalFormat, voce tem algum exemplo de como eu possa estar fazendo isso.
Outra coisa amigo, estou usando o codigo abaixo para mostrar 2 casas decimais depois da virgula, e não esta aparecendo, por favor voce tem algum exemplo de como fazer isso tambem.
int decimalPlace = 2;
BigDecimal bd = new BigDecimal(precoVenda);
bd = bd.setScale(decimalPlace, BigDecimal.ROUND_HALF_UP);
precoVenda = bd.doubleValue();
Obrigado.
O que voce esta fazendo ai é arredondando o valor, se deseja apenas mostrar ele formatado use o DecimalFormat
String valor = "2,345";
DecimalFormat format = new DecimalFormat("0.00");
double valorD = format.parse(valor).doubleValue();
System.out.println("double: " + valorD);
System.out.println("string: " + valor);
System.out.println("format double: " + format.format(valorD));
resultado:
double: 2.345
string: 2,345
format double: 2,34
Segue exemplo:
DecimalFormat df = new DecimalFormat("###,###.00");
System.out.println(df.format(255555d));
at.