数据表仅检索我的CSV文件的第一列

时间:2019-04-02 19:54:34

标签: vb.net csv datatable

我有一个CSV文件,我想在datagridview中显示该文件的内容。我正在使用LumenWorks.Framework.IO.Csv库这样做,这是我的代码:

Dim CSVPath As String = CSVLocation.Text

Dim dt As New DataTable

dim csvR As New CsvReader(New StreamReader(CSVPath), false)

dt.Load(csvR)                           

dataGridViewSection.DataSource=dt

现在我的问题是,只有CSV文件的第一列正在读取并显示在datagridview中。

我发现原因是我的CSV文件的第一行仅包含1个字符串,而标题实际上位于文件的第三行。

这是NotePad中CSV文件的外观:

ETABS
23,,,22,,,8,,,,,,13,,,5,,,,,77,,,,,,,,,6,,,,,,159,,,,,,,,,,,471
GridX,X(ft),,GridY,Y(ft),,GridGen,X1(ft),Y1(ft),X2(ft),Y2(ft),[...],Level

前两行包含对程序有用的数据(包括项目计数等),但不需要显示。

有没有办法在仍然可以在后台访问该数据的同时从数据表中丢弃前两行?

编辑:一种解决方法是用一个点填充第一行的每个单元格,直到我们到达最后一列,以使读者注意到存在多列,因此CSV文件看起来像这个:

ETABS,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,.,[...],.
23,,,22,,,8,,,,,,13,,,5,,,,,77,,,,,,,,,6,,,,,,159,,,,,,,,,,,471,,,,,,,
GridX,X(ft),,GridY,Y(ft),,GridGen,X1(ft),Y1(ft),X2(ft),Y2(ft),[...],Level

但这是一种非常优雅的方法。

0 个答案:

没有答案