3
respostas

O campo DataNascimento deve ser exibido no formarto DD/MM/AAAA

Alguém poderia me ajudar?? Exibir DataNascimento no formato DD/MM/AAAA, mas não estou conseguindo.

List clientes = new List(); //var listaUsuariosOrdenados = clientes.OrderBy(c => c.Nome);

        string caminhoArquivo = "C:\\Users\\vinicius.penha\\Documents\\clientes1.txt";

        var consulta = from linha in File.ReadAllLines(caminhoArquivo)

                       let clienteDados = linha.Split(';')
                       select new Cliente()
                       {
                           Id = Convert.ToInt32(clienteDados[0]),
                           Nome = clienteDados[1],
                           DataNascimento = Convert.ToDateTime(clienteDados[2].Substring(0, 2).Substring(2, 2).Substring(4, 4)),
                           Sexo = clienteDados[3],
                           Cpf = clienteDados[4],
                       };

OBS: Estou usando o C#.

3 respostas

Olá Vinicius, tudo bem?

Levando em conta que seu campo de data recebeu apenas os valores referentes (e nesta ordem) a ano, mês e dia, depois na hora de mostrar os dados é só usar .ToString("dd/MM/yyyy"); que irá mostrar os dados na ordem dia/mês/ano:

DateTime data = new DateTime(1984, 8, 5);
Console.WriteLine(data.ToString("dd/MM/yyyy"));

Aqui neste artigo tem outros modos de exibição de datas e a explicação dos caracteres.

Espero ter ajudado!

Obrigado pela Ajuda, mas seria dessa forma?? Quando eu executo o código, fica aparecendo essa mensagem de erro: " O índice e o comprimento devem se referir a um local dentro da cadeia de caracteres."

List clientes = new List(); //var listaUsuariosOrdenados = clientes.OrderBy(c => c.Nome);

        string caminhoArquivo = "C:\\Users\\vinicius.penha\\Documents\\clientes1.txt";

        var consulta = from linha in File.ReadAllLines(caminhoArquivo)

                       let clienteDados = linha.Split(';')
                       select new Cliente()
                       {
                           Id = Convert.ToInt32(clienteDados[0]),
                           Nome = clienteDados[1],
                           DataNascimento = Convert.ToDateTime(clienteDados[2].Substring(0, 2).Substring(2, 2).Substring(4, 4)),
                           Sexo = clienteDados[3],
                           Cpf = clienteDados[4],
                       };

        DateTime data = new DateTime(1984, 8, 5);
        Console.WriteLine(data.ToString("dd/MM/yyyy"));

Vinicius, esse erro aparece referente a qual linha de código?