How to import CSV files into DataTable in C#

Below is code the which you can use for converting a csv file into Data Table in C#. This method also handles comma values inside a double quoted value.
1. Provide the file path of your csv file:

string sCsvFilePath = @"C:\Downloads\Sample.csv";


2. Call Custom Method:

DataTable dtTable = ConvertCSVtoDataTable(sFilePath);

3. Copy and Paste below:

public static DataTable ConvertCSVtoDataTable(string sCsvFilePath)
{
    DataTable dtTable = new DataTable();
    Regex CSVParser = new Regex(",(?=(?:[^\"]*\"[^\"]*\")*(?![^\"]*\"))");
 
    using (StreamReader sr = new StreamReader(sCsvFilePath))
    {
        string[] headers = sr.ReadLine().Split(',');
        foreach (string header in headers)
        {
            dtTable.Columns.Add(header);
        }
        while (!sr.EndOfStream)
        {
            string[] rows = CSVParser.Split(sr.ReadLine());
            DataRow dr = dtTable.NewRow();
            for (int i = 0; i < headers.Length; i++)
            {
                dr[i] = rows[i].Replace("\"",string.Empty);
            }
            dtTable.Rows.Add(dr);
        }
    }
 
    return dtTable;
}

Comments

Popular posts from this blog

How to show enlarge image when mouse hover on image or link in Asp.Net(c#) using JavaScript

StateCode and StatusCode Values for mostly used entities in Microsoft Dynamics CRM 2013

Search data in Gridview on Textbox Key press event using JQuery in Asp.Net- C#

go to top image