none
Abrir Arquivo TXT com openfiledialog e exibir em datagridview RRS feed

  • Pergunta

  • Olá pessoal, preciso criar um programa C# em windows forms, ele tem que abrir um arquivo de texto com o openfiledialog e exibir as informações do arquivo de texto em uma tabela no datagridview. O problema é que por mais simples que seja, eu não faço noção de como começar o programa. O arquivo de texto contem informações separadas por ; e deve colocar cada informação numa tabela no datagridview... Como posso começar esse programa?
    segunda-feira, 2 de julho de 2018 17:58

Respostas

  • Boa Noite,  Veja se isto lhe ajuda,
    Criei um arquivo TXT com o seguinte conteúdo: 1;2;3;4;5;6

     private void button1_Click(object sender, EventArgs e)
            {
                OpenFileDialog openFileDialog1 = new OpenFileDialog();
                if (openFileDialog1.ShowDialog() == DialogResult.OK)
                {
                   StreamReader sr = new StreamReader(openFileDialog1.FileName);
    
                    DataColumn column;
                    DataRow row;
                    DataView view;
    
                    var dt = new DataTable { TableName = "Minha Tabela" };
    
                    //Percorre o arquivo até o final
                    while (sr.EndOfStream == false)
                    {
                        var dados = sr.ReadLine();
                        Char separador = ';';
                        String[] substrings = dados.Split(separador);
    
                        row = dt.NewRow();
                        foreach (var substring in substrings)
                        {
                            dt.Columns.Add(new DataColumn { ColumnName = substring, DataType = typeof(string) });
                            
                            row[substring] = substring;
                            row[substring] = "Item: " + substring.ToString();
      
                        }
                        dt.Rows.Add(row);
                    }
                    dataGridView1.DataSource = dt;
                }
            }

    Abraços

    terça-feira, 3 de julho de 2018 00:48

Todas as Respostas

  • Boa Noite,  Veja se isto lhe ajuda,
    Criei um arquivo TXT com o seguinte conteúdo: 1;2;3;4;5;6

     private void button1_Click(object sender, EventArgs e)
            {
                OpenFileDialog openFileDialog1 = new OpenFileDialog();
                if (openFileDialog1.ShowDialog() == DialogResult.OK)
                {
                   StreamReader sr = new StreamReader(openFileDialog1.FileName);
    
                    DataColumn column;
                    DataRow row;
                    DataView view;
    
                    var dt = new DataTable { TableName = "Minha Tabela" };
    
                    //Percorre o arquivo até o final
                    while (sr.EndOfStream == false)
                    {
                        var dados = sr.ReadLine();
                        Char separador = ';';
                        String[] substrings = dados.Split(separador);
    
                        row = dt.NewRow();
                        foreach (var substring in substrings)
                        {
                            dt.Columns.Add(new DataColumn { ColumnName = substring, DataType = typeof(string) });
                            
                            row[substring] = substring;
                            row[substring] = "Item: " + substring.ToString();
      
                        }
                        dt.Rows.Add(row);
                    }
                    dataGridView1.DataSource = dt;
                }
            }

    Abraços

    terça-feira, 3 de julho de 2018 00:48
  • Boa tarde,

    Por falta de retorno essa thread está sendo encerrada.

    Se necessário favor abrir uma nova thread.

    Atenciosamente,

    Filipe B de Castro

    Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as postagens que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    sexta-feira, 3 de agosto de 2018 19:46
    Moderador
  • Boa Tarde! Me ajudou bastante seu exemplo, no meu datagried eu utilizo duas colunas com nome de X e Y, eu gostaria que os dados do txt entrassem somente nessas colunas e n criasse novas colunas entrado 2 dados por linha. Como faço?
    quarta-feira, 19 de fevereiro de 2020 20:44