通过动态读取文本文件来添加数据行

时间:2012-05-15 10:33:52

标签: vb.net datarow

我有一个程序可以读取文本文件,并根据文件中的列动态创建数据表。

这似乎工作正常。

然后我尝试读取文本文件的其余部分,创建一个数据行以添加到我的表中。我正在使用下面的代码,但它对我不起作用。

查看plaincopy到clipboardprint?

            Dim strFieldData As New ArrayList  
            Dim obj As New Object()
            'this code give me 12 separate elements  
            strFieldData = SplitDelimitedLine(strLineOfFile, ",", "|")  

            Dim dr As DataRow  

            For i As Integer = 0 To strFieldData.Count - 1  
                dr = DataForSQLTable.NewRow()  
                dr.ItemArray(i) = strFieldData.Item(i)  
            Next
            'however when I look at the value of dr.itemarray I see System.DBNull for all the fields  
            DataForSQLTable.Rows.Add(dr)  

我显然错过了这个伎俩。有人可以帮帮我吗?

1 个答案:

答案 0 :(得分:2)

看起来你只是添加了最后一项。您需要在for循环中移动附加行。

For i As Integer = 0 To strFieldData.Count - 1
    Dim dr as DataRow = DataForSQLTable.NewRow() 
    dr.ItemArray(i) = strFieldData.Item(i)
    DataForSQLTable.Rows.Add(dr) 
Next