Мне нужно импортировать файл CSV, который может иметь или не иметь запись заголовка.
Если я читаю файл, который не имеет строки заголовка, он предполагает, что первая строка данных является заголовком и нене вернуть его.Если я укажу HasHeaderRecord = false, то при возникновении записи заголовка возникнет исключение.
Есть ли способ использовать библиотеку CsvHelper и иметь дополнительную запись заголовка?
Я могу получить этоработать с использованием этого подхода, но кажется, что может быть лучший способ:
csvReader.Configuration.HasHeaderRecord = false;
while (csvReader.Read())
{
try
{
var record = csvReader.GetRecord<MyModel>();
myRecordList.Add(record);
}
catch (ReaderException rex)
{
// Check if this is an error with no header record and ignore
if (rex.ReadingContext.CurrentIndex == 1 &&
rex.ReadingContext.RawRecord.ToLower().Contains("myHeaderColumnName"))
{
continue;
}
}
}