Formatando String rapidamente
Veja como é fácil formatar qualquer tipo de dado...
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
Subscribe ecode10.com
Receive our latest updates about programming languages, software, database, books, ebooks, classes, jobs and more.
You can cancel anytime.
Log In