Brasília 24 defevereiro de 2010

 

Olá pessoal, gostaria de deixar registrado comintuito de ajudar ao desenvolvedor, analista e outros que precisam desse tipode solução.  A solução propostaserá de formatar qualquer tipo de dado rapidamente.

 

Requisitos:

Ferramenta dedesenvolvimento Visual Studio .NET

Framework .NET3.5

Linguagem C#.NET

 

Continuando... No caso de ter um CPF semformato, CEP, Telefone, Data e outros, basta usar o método abaixo que tudo seráformatado de uma forma simples e fácil. Na prática, passo apenas o formato queeu quero usando sharp ou cerquilha (#) e a string sem formato algum, no final ométodo retorna a string formatada. Por exemplo: (“##/##/###”, “12092010”) e ovalor retornado é “12/09/2010”.

Depois que comecei a utilizar esse tipo deformato, nunca mais tive que ficar re-formatando data, valores, CPF, CEP eoutros. Não quero estender muito o arquivo falando, pois é simples de usar equero ser simples no explicar. (Code 1.1)

 

 

protected string FormataString(string mascara, string valor)

    {

        string novoValor = string.Empty;

        int posicao = 0;

 

        for (int i = 0; mascara.Length > i; i++)

        {

            if (mascara[i] == '#')

            {

                if (valor.Length > posicao)

                {

                    novoValor = novoValor + valor[posicao];

                    posicao++;

                }

                else

                    break;

            }

            else

            {

                if (valor.Length > posicao)

                    novoValor = novoValor + mascara[i];

                else

                    break;

            }

        }

 

        return novoValor;

    }

Code 1.1

 

O primeiro passo analisando o método coloqueicomo protected porque é interno do meu sistema. Retorna “string” e recebe doisparâmetros de entrada. O primeiro parâmetro de entrada é a “mascara” e osegundo “valor” que deseja formatar. No método, primeiro de tudo é dado um“for” para percorrer os dados e colocar a máscara de acordo com que foipassado. Depois da máscara colocada, retorna o dado formatado.

Lembro que é necessário mandar o valor semformato nenhum. Para chamar a função basta fazer o seguinte: (Code 1.2)

 

 

//Formatando CPF

Response.write(FormataString(“###.###.###-##”, “09289209309”));

 

//Formatando Data

Response.write(FormataString(“##/##/####”, “12092010”));

 

//Formata CEP

Response.write(FormataString(“##.###-###”, “70000000”));

 

//Formata valor

Response.write(FormataString(“##,##”, “2309”));

Code 1.2

 

O resultado é muito bom e me ajuda muito aformatar os dados para mostrar em tela. Funciona com os grids e tudo mais semnenhum problema.  Espero terajudado e qualquer dúvida, pode entrar em contato pelo site.

 

Mauricio Junior

www.mauriciojunior.org

blog.mauriciojunior.org