Back-End

16 fev, 2007

Preencha a Esquerda com Zero ou a Direita com Branco em Java

Publicidade

Para Quem vai gerar TXT para exportação ou importação em outro Sistema!

Num sistema interno usado na UFPA precisei exportar registros extraídos de um banco para um arquivo .txt obedecendo determinados critérios como: preencher com zero a esquerda ou branco a direita. Então, para facilitar o meu trabalho, adaptei um método para esta finalidade e compartilho esta solução com vocês num exemplo Ready to Use!

Pré-Requisitos:

    ->Java SE 5 (1.5) plenamente instalado e configurado

    ->NetBeans 5.5 ou a IDE de sua Preferência

Preenchendo com zero a esquerda

ao executar o código abaixo a resposta no console terá que ser “00000000532835”

Listagem 01. Classe Main.

package artigo2; 

public class Main { 

    public static void main(String args[]){

        Utils util = new Utils();

        System.out.println(util.preencheCom("532835" , "0" , 14 , 1));

    }

} 

Explicando: conforme você verificou este método precisa de 4 parâmetros:

    ->A String “532835” representa A Linha ou texto a ser preenchido

    ->A String “0” representa A Letra ou Número que será inserido

    ->O Integer 14 representa o tamanho total que a String a ser preenchida precisa ter

    ->O Integer 1 informa ao método que a String “0” será preenchida a Esquerda

OBS: 1 preenche a Esquerda, 2 preenche a direita ok.

A Listagem 02 abaixo apresenta a classe util referenciada acima:

package artigo2; 

public class Utils {

   

    public static String preencheCom(String linha_a_preencher, String letra, int tamanho, int direcao){

        //Checa se Linha a preencher é nula ou branco

        if (linha_a_preencher == null || linha_a_preencher.trim() == "" ) {linha_a_preencher = "";}

       

        //Enquanto Linha a preencher possuir 2 espaços em branco seguidos, substitui por 1 espaço apenas

        while (linha_a_preencher.contains("  ")) {linha_a_preencher = linha_a_preencher.replaceAll("  "," ").trim();}

       

        //Retira caracteres estranhos

        linha_a_preencher = linha_a_preencher.replaceAll("[./-]","");

        StringBuffer sb = new StringBuffer(linha_a_preencher);

        if (direcao==1){ //a Esquerda

            for (int i=sb.length() ; i<tamanho ; i++){

                sb.insert(0,letra);

            }

        } else if (direcao==2) {//a Direita

            for (int i=sb.length() ; i<tamanho ; i++){

                sb.append(letra);

            }

        }

        return sb.toString();

    }

} 

Preenchendo com Espaço em Branco a Direita

Ao executar o código abaixo a resposta no console terá que ser “Fulano de Tal ” com espaço em branco a direita até completar 20 caracteres. Vejam que duplo espaço em branco é substituído por apenas 1(um) espaço em branco

Listagem 3:

package artigo2; 

public class Main { 

    public Main() {

    } 

    public static void main(String args[]){

        Utils util = new Utils();

        System.out.println(util.preencheCom("Fulano  de   Tal" , " " , 20 , 2));

    }

}

Até a próxima.

Para Baixar o Código-Fonte Deste Artigo Clique Aqui. Ou http://br.geocities.com/consubr/artigos/Artigo2_Preenche_Com.zip

OBS: Este artigo, bem como o código-fonte, é de livre divulgação, desde que, citada a fonte