Java: Formatando um Valor Numerico: Difference between revisions

From Wiki
mNo edit summary
No edit summary
Line 1: Line 1:
Solução pra um problema comum em foruns Java.
Solução pra um problema comum em foruns Java.


= Exemplo =


  package testes;
  package testes;
Line 45: Line 46:
  '''30.000,00'''
  '''30.000,00'''
  '''3.000.000,00'''
  '''3.000.000,00'''
= Ver também =
*[[BIND: Configurando o suporte ao Active Directory]]
*[[Java| Mais Artigos sobre Java]]
*[[Tecnologias|  Mais Artigos sobre outras Tecnologias]]
*[[Apache HTTP Server|  Mais Artigos sobre Apache HTTP Server]]
*[[Linux|  Mais Artigos sobre Linux / UNIX / AIX]]
[[Category:Linux]]
[[Category:Java]]
[[Category:Tecnologias]]

Revision as of 22:40, 25 September 2014

Solução pra um problema comum em foruns Java.

Exemplo

package testes;

import java.math.BigDecimal;
import java.text.DecimalFormat;
import java.text.DecimalFormatSymbols;
import java.util.Locale;

public class FormataValor {

	public static void main(String[] args) {
		System.out.println(formataValor(".03"));
		System.out.println(formataValor("0.03"));
		System.out.println(formataValor("003"));
		System.out.println(formataValor("30000.00"));
		System.out.println(formataValor("3000000"));
	}
	
	public static String formataValor(String valor){
	       
		BigDecimal bd = new BigDecimal(valor);
               bd.setScale(8,BigDecimal.ROUND_HALF_UP);
      
               String pattern = "###,###,##0.00";
        
               Locale locale=new Locale("pt","BR");
      
               DecimalFormatSymbols symbols=new DecimalFormatSymbols(locale);
               symbols.setDecimalSeparator(',');
               symbols.setGroupingSeparator('.');
               DecimalFormat f=new DecimalFormat(pattern,symbols);
      
               return f.format(bd);
       }
}


O resultado é:

0,03
0,03
3,00
30.000,00
3.000.000,00


Ver também