Tôi đã điều chỉnh mã từ câu trả lời @ tim-schmelter cho câu hỏi chuyển đổi dữ liệu csv sang DataTable trong VB.net (xem bên dưới)
Tôi muốn phân tích cú pháp trong các tiêu đề cột từ hàng 0 của tệp csv
DT|Meter Number|Customer Account Number|Serial Number|Port...
nhưng tôi không gặp may khi cố gắng tìm ra cách làm điều này. bất kỳ đề xuất sẽ rất được đánh giá cao.
Public Function csvToDatatable_2(ByVal filename As String, ByVal separator As String)
'////////////////////////////////////////
'Reads a selected txt or csv file into a datatable
'based on code from http://stackoverflow.com/questions/11118678/convert-csv-data-to-datatable-in-vb-net
'////////////////////////////////////////
Dim dt As System.Data.DataTable
Try
dt = New System.Data.DataTable
Dim lines = IO.File.ReadAllLines(filename)
Dim colCount = lines.First.Split(separator).Length
For i As Int32 = 1 To colCount
dt.Columns.Add(New DataColumn("Column_" & i, GetType(String)))
Next
For Each line In lines
Dim objFields = From field In line.Split(separator)
Dim newRow = dt.Rows.Add()
newRow.ItemArray = objFields.ToArray()
Next
Catch ex As Exception
Main.Msg2User(ex.Message.ToString)
Return Nothing
End Try
Return dt
End Function