Mr.AsaDelta,
 
Não sei se é bem isso que você quer, mas aí vai um exemplo de formatação.
O método transform está preparado para receber double(com máscara e sem máscara) , mas você pode criar as variações que quiser.
 
Eliseu Pfaffenseller
Analista de Sistemas.
 
//INÍCIO DO FONTE:
import java.text.*;
class JFNumber
{
    //======================================================================\\
    // transform function:
    // Put number to the Brazilian/English Format (decimal point is comma)
    // and format to the optional informed mask
    public static String transform(double num)
    {
        return(transform(num, null));
    }
    public static String transform(double num, String mask)
    {
        DecimalFormat df = new DecimalFormat();
        DecimalFormatSymbols dfs = new DecimalFormatSymbols();
        dfs.setCurrencySymbol("R$");
        dfs.setGroupingSeparator('.');
        dfs.setDecimalSeparator(',');
        df.setDecimalFormatSymbols(dfs);
        if(mask != null)
            df.applyPattern(mask);
        return(df.format(num));
    }
    //======================================================================\\
}
//TESTE:
public class Teste
{
    public static void main(java.lang.String[] args)
    {
        System.out.println(JFNumber.transform(123456.78,"###,##0.00"));
        System.out.println(JFNumber.transform(123456.78));
        System.out.println(JFNumber.transform(0.12,"###,##0.00"));
        System.out.println(JFNumber.transform(0.12,"R$ ###,##0.00"));
        System.out.println(JFNumber.transform(456.78,"000,000.00"));
        System.out.println(JFNumber.transform(3456.78,"000,000.00"));
        System.out.println(JFNumber.transform(3456.78,"000000.00"));
    }
}
//FIM DO FONTE
-----Original Message-----
From: asadelta java [mailto:[EMAIL PROTECTED]
Sent: 11 March, 2003 15:03
To: [EMAIL PROTECTED]
Subject: [java-list] Formatação decimal de uma String

Olá,

como faço para fazer um formatação decimal de uma string obtida do BD?

P.ex. Recebi as Strings

str1 = "123"; // o resultado deveria ser 1,23 decimal

str2 = "123456" // o resultado deveria ser 1.234,56 decimal

Na API do Java existe alguma alternativa fácil ou teria que fazer na unha?

Obrigado.



Busca Yahoo!
O serviço de busca mais completo da Internet. O que você pensar o Yahoo! encontra.

Responder a