Opa,
preciso formatar umas strings com 2 casas decimais, adicionar o R$ e remover os 0s à esqueda.
Estou usando a classe DecimalFormat:
De acordo com a referência: http://developer.android.com/reference/java/text/DecimalFormat.html,
o ‘#’ é usado para retirar os 0s à esquerda, mas o código acima gera IllegalArgumentException.
Como usar essa classe para aplicar esse padrão aos números decimais??
Vlwww
ruivo
#2
Amigo, a maneira correta de formatar valores é utilizar o seguinte:
NumberFormat format = NumberFormat.getCurrencyInstance(new Locale("pt", "BR"));
veja bem que, conforme o país e o idioma utilizado, o NumberFormat conseguirá formatar corretamente a moeda e os decimais.
ruivo
#3
Vou melhorar o meu exemplo.
NumberFormat value = NumberFormat.getInstance(new Locale("pt", "BR"));
NumberFormat currency = NumberFormat.getCurrencyInstance(new Locale("pt", "BR"));
try {
Double dValue = (Double) value.parse("005,300");
System.out.println(dValue);
String valorRS = currency.format(dValue);
System.out.println(valorRS);
} catch (ParseException e) {
e.printStackTrace();
}
Valeu d+…
Não achava em lugar nenhumm :roll: