Pessoal estou meio que com um problema urgente, tenho um valor que eu insiro no banco exemplo 01.10, na hora de transformar para um formato valido com virgula eu faço isto:
Locale l = fc.getViewRoot().getLocale();
NumberFormat formatador = NumberFormat.getNumberInstance(l);
formatador.setMinimumFractionDigits(2);
formatador.setMaximumFractionDigits(2);
formatador.setGroupingUsed(true);
return formatador.format(value);
O problema é que ele transforma para 1,10 e eu precisava que ele coloca-se o zero na frente desta forma:
01,10
como fazer isto ?
Use:
NumberFormat formatador = NumberFormat.getPercentInstance();
Então Bruno só que no meu banco de dados não vem de 0.0 até 1.0 vem de 00.00 até 99.99, eu teria que fazer uma divsão ai, coisa que eu não estou querendo muito !! não teria uma outra maneira ?
Se o valor que você armazena no banco de dados for do tipo texto, ou seu uso precisar exibir com o zero a esquerda, então tenta este código.
String valor = String.format("%05.2f", 7.3); //7.3 é seu valor
O resultado é um número no formato 00.00 até 99.99;
Se tiver numa String vc pode usar…
import org.apache.commons.lang.StringUtils;
String numero = "1,10";
StringUtils.leftPad(numero, 4, "0");
vc passao a string, o tamanho que vc quer que fique e o caracter que eh pra completar a esquerda.
[code] NumberFormat nf = NumberFormat.getInstance();
nf.setMaximumFractionDigits(2);
nf.setMaximumIntegerDigits(2);
nf.setMinimumFractionDigits(2);
nf.setMinimumIntegerDigits(2);
System.out.println(nf.format(1.1));
[/code]
Resolvi usando:
formatador.setMinimumFractionDigits(2);
formatador.setMaximumFractionDigits(2);
formatador.setMaximumIntegerDigits(2);
formatador.setMinimumIntegerDigits(2);