Imprimir um double com uma casa decimal

2 respostas
Y

Olá a todos, estou com um problema ao utilizar a classe java.util.Formatter

double num = 5.000;

StringBuilder sb = new StringBuilder();
Formatter formatter = new Formatter(sb);
		 
		 
formatter.format("%.1f",num);

System.out.println(formatter.toString());

O resultado pretendido seria [color=red]5.0[/color] acontece que o output é [color=red]5,0[/color] !!!

Alguém me sabe explicar o que está errado?
Obrigado

2 Respostas

R

cara tb tava com esse problema, ae para resolver troquei "," por ponto "."

[code]
String valor = null;
DecimalFormat df = new DecimalFormat("#.00");
valor = df.format(num);
valor = valor.replace(",", ".");
code]

Y

o problema era no Locale

construi o objecto da seguinte maneira:

Formatter formatter = new Formatter(sb,Locale.US);

e já funciona!

Criado 29 de março de 2008
Ultima resposta 31 de mar. de 2008
Respostas 2
Participantes 2