Reading a tab delimited text file into DataTable
PS: You need to add reference to Microsoft.VisualBasic also import the namespace using Microsoft.VisualBasic.FileIO;
DataTable records = new DataTable("records"); var textReader = new TextFieldParser(@"E:\CSV.txt"); using (textReader) { textReader.TextFieldType = Microsoft.VisualBasic.FileIO.FieldType.Delimited; textReader.Delimiters = new String[] { "\t" }; ListcurrentRow = new List (); bool IsFirst = true; int rowCount = 0; while (!textReader.EndOfData) { try { Console.WriteLine("reading line: " + (rowCount++)); currentRow = textReader.ReadFields().ToList(); if (IsFirst) { IsFirst = false; //add columns foreach (string col in currentRow) { records.Columns.Add(col); } } else { DataRow row = records.NewRow(); for (int i = 0; i < currentRow.Count; i++) { row[i] = currentRow[i]; } records.Rows.Add(row); } } catch (Exception ex) { Console.WriteLine(ex.Message); } } }
PS: You need to add reference to Microsoft.VisualBasic also import the namespace using Microsoft.VisualBasic.FileIO;