Чтение CSV-файла в DataTable с использованием C#?

У меня есть несколько сценариев Python, которые я написал некоторое время назад, чтобы провести анализ данных. Мне нужно "портировать" некоторые из этих скриптов на C#.

Python предоставляет модуль CSV, который облегчает импорт данных CSV из файла в словарь. Я хочу, чтобы в моей библиотеке была та же функциональность, но, поскольку я новичок в C#, решил приехать сюда, чтобы спросить передовой метод импорта данных CSV в DataTable.

Я свертываю свой собственный, или есть "модуль CSV" аля Python?

2 ответа

Решение

Я не буду пытаться свернуть твой собственный. Вы прекратите свою работу, пытаясь справиться со всеми странными случаями, которые CSV-файлы могут бросить в вас.

Я бы порекомендовал вместо этого Себастьян Лорион Fast CSV Reader:

using (var csv = new CachedCsvReader(new StreamReader(filePath), true))
{
    DataTable Table = new DataTable();
    Table.Load(csv);
}

Я не нашел никаких встроенных функций.NET (когда я кодировал свое решение в.NET 2.0), которые бы удовлетворяли мои потребности, поэтому я использовал ссылку с открытым исходным кодом ниже. Я обрабатываю около 36000 файлов в месяц, это работает хорошо, и у меня еще не возникло проблем.

CSVReader

Другие вопросы по тегам