首页 > 解决方案 > 在将其写入 CSV 文件时选择特定列

问题描述

我正在使用数据集编写 CSV 文件。我只需要从我的数据集中选择几列而不是所有列。

我正在使用下面的代码,但它将数据行中的所有列写入 CSV 文件。

我只需要将第一、第三和第五列写入 CSV 文件并忽略第二和第四列。

For Each row As DataRow In dsRefs.Tables(0).Rows
     For i As Integer = 0 To dsRefs.Tables(0).Columns.Count() -
            csvWriter.NextRecord()
      Next
Next

标签: vb.net

解决方案


解决此问题的技术可能是;

Dim listOfColums = (From dtR As DataRow In dsRefs.Tables(0).Rows
                    Select r1 = dtR.Item(0), 'first
                           r2 = dtR.Item(2), 'third
                           r3 = dtR.Item(4)) 'fifth


Using sWriter As StreamWriter = New StreamWriter("C:\YouurPathToSaveCsv\YourFileCsv.csv")

    Dim divider As String = ";"

    If listOfColums IsNot Nothing AndAlso listOfColums.Count > 0 Then

        For Each okList In listOfColums
            Dim cRow As String = Strings.Join({okList.r1, okList.r2, okList.r3}, divider)
            Console.WriteLine(cRow)
            sWriter.WriteLine(cRow)
        Next

    End If

End Using

推荐阅读