DataTable оленьей кожи показывать строки во время чтения файла TSV

Обновить

April 2019

Просмотры

23 раз

0

введите описание изображения здесьЧитаю .tsv файл, который имеет около 3500 столбцов и 1000 строк, когда я добавить строки в таблицу данных, строки добавляются в таблицу данных успешно (я вижу datatable.Rows.Count растет), но таблица данных не показывает каких-либо данных. я упомянул различные статьи, по-прежнему видим тот же вопрос, какие-либо предложения помогло бы мне

static void Main(string[] args)
    {
        DataTable datatable = new DataTable();
        StreamReader streamreader = new StreamReader(@"C:\Users\Latest PM File.tsv");
        char[] delimiter = new char[] { '\t' };
        string[] columnheaders = streamreader.ReadLine().Split(delimiter);
        foreach (string columnheader in columnheaders)
        {
            datatable.Columns.Add(columnheader); // I've added the column headers here.
        }

        while (streamreader.Peek() > 0)
        {
            DataRow datarow = datatable.NewRow();
            datarow.ItemArray = streamreader.ReadLine().Split(delimiter);
            datatable.Rows.Add(datarow);
        }
}

1 ответы

0

If it's any help, I wasn't able to reproduce your problem:

enter image description here

Here's the slightly simpler code I used:

class Program
{
    static void Main(string[] args)
    {
        DataTable dt = new DataTable();
        for (int i = 0; i < 3; i++)
            dt.Columns.Add("col" + i);

        foreach (var line in File.ReadAllLines(@"C:\temp\a.tsv"))
            dt.Rows.Add(line.Split('\t'));

        int c = dt.Rows.Count; //not necessary, just makes for an easy place to put a breakpoint
    }
}

Does it work for you if you paste it verbatim?