Sábado, 28 Julho 2007

Completar números com zeros a esquerda

Ao lidar com impressão de números em relatórios, geralmente é necessário preencher todas as posições com o número zero a esquerda.

Exemplo:

É necessário preencher um campo de 10 posições, onde dado um número qualquer, que seja menor do que a quantidade de posições, então as posições do lado esquerdo devem ser preenchidos com o número zero.

Número Impressão
382 0000000382
450018 0000450018


Uma das técnicas mais comuns é usar a quantidade total de números do campo e adicionar com zeros a esquerda e depois remover os zeros excedentes.

int n = 38002;
String zeros = "0000000000";
String numero = zeros + n;
System.out.println(numero.substring(numero.length() - 10));

No Java 5 existe um método printf, copiado da linguagem C que permite formatar a impressão do resultado. 

int n = 38002;
System.out.printf("%010d", n);

Esta é apenas uma das funcionalidades adicionadas ao Java 5 que aos poucos são incorporadas no dia a dia dos projetos.

Atualização em 28/julho:

Nem tudo é impresso no console, mas manipulações de variáveis, então basta usar outro método que retorna uma String. No exemplo abaixo, a variável f, contém o número formatado.

String f = String.format("%010d", n);
System.out.printf(f);

Escrito por claudio at 5:07 AM categorizado por Dicas e Scripts

Tags: java dicas

 

[Trackback URL desta mensagem]

Escreva um comentário:

(not displayed)
 
 
 

Previsão de formatação:

 
 
     Navegue no histórico de mensagens: « First  « Prev   1 2 3 4 5   Next »  Last »