const string path = @"C:\Users\wilin\Downloads\sampleData.csv";
var data = new CsvReader().Read(path);
Console.ReadKey();
public class CsvReader
{
public CsvData Read(string path)
{
using var streamReader = new StreamReader(path);
const string SEPARATOR = ",";
var columns = streamReader.ReadLine().Split(SEPARATOR);
var rows = new List<string[]>();
while (!streamReader.EndOfStream)
{
var cellsInRow = streamReader.ReadLine().Split(SEPARATOR);
rows.Add(cellsInRow);
}
return new CsvData(columns, rows);
}
}
public class CsvData
{
public string[] Columns { get; }
public IEnumerable<string[]> Rows { get; }
public CsvData(string[] columns, IEnumerable<string[]> rows)
{
Columns = columns;
Rows = rows;
}
}