CSV2DataTable – Importing the data contained in a CSV file into a new DataTable

' Import the data contained in a CSV file into a new DataTable. By default the ' values are Tab delimited, but you can use the second overload version to use ' any other string you want.'' Example:'    Dim table As DataTable = CSV2DataTable("D:Users.txt")'    DataGrid1.DataSource = tableFunction CSV2DataTable(ByVal filename As String) As DataTable    Return CSV2DataTable(filename, vbTab)End FunctionFunction CSV2DataTable(ByVal filename As String, ByVal sepChar As String) As _    DataTable    Dim reader As System.IO.StreamReader    Dim table As New DataTable    Dim colAdded As Boolean = False    Try        ' open a reader for the input file, and read line by line        reader = New System.IO.StreamReader(filename)        Do While reader.Peek() >= 0            ' read a line and split it into tokens, divided by the specified             ' separators            Dim tokens As String() = System.Text.RegularExpressions.Regex.Split _                (reader.ReadLine(), sepChar)            ' add the columns if this is the first line            If Not colAdded Then                For Each token As String In tokens                    table.Columns.Add(token)                Next                colAdded = True            Else                ' create a new empty row                Dim row As DataRow = table.NewRow()                ' fill the new row with the token extracted from the current                 ' line                For i As Integer = 0 To table.Columns.Count - 1                    row(i) = tokens(i)                Next                ' add the row to the DataTable                table.Rows.Add(row)            End If        Loop        Return table    Finally        If Not reader Is Nothing Then reader.Close()    End TryEnd Function

Share the Post:
Share on facebook
Share on twitter
Share on linkedin

Overview

Recent Articles: