На самом деле нет "лучшей практики".Помните о конкретной структуре ваших данных, о том, как быстро вы хотите их прочитать, сохранить, запросить, отсортировать, найти / исключить / игнорировать дубликаты и т. Д. Дерево, связанный список, хеширование, упорядоченные данные и т. Д.... это хорошие варианты в зависимости от факторов, которые я уже упоминал.
Я согласен с другими стипендиатами.Не нужно изобретать велосипед.Там должно быть несколько миллиардов примеров о том, как анализировать CSV.
Однако, при выборе вашей любимой библиотеки, несколько слов предостережения:
- Рекомендация: никогда не думайте, что данные имеютопределенный (маленький или очень большой) объем данных.Следствие: не храните все данные в памяти, хотя бы разумно, и предполагайте, что независимо от размера вашего массива, данные могут быть больше его.Учитывая это, обойдем это предположение.
- Еще одна лучшая практика: тестируйте угловые случаи (без ввода, очень большой ввод, только одна строка или элемент и т. Д.)
- CSV-файлы не являютсястандарт.Например, некоторые программы, которые генерируют CSV, просто игнорируют следующие случаи:
3.1.Запятые в строках.Например, это не тот же «Смит, Джон», как Смит, Джон.3.2.Специальные символы со строками, такие как апострофы, табуляции или кавычки.Как они обрабатываются?Например, Microsoft обычно использует двойные-двойные кавычки для представления кавычек внутри строки.3.3.И, конечно же, будьте осторожны с форматом конца строки (Unix или Windows-style).
Обязательно посмотрите очень хороший набор фактических данных .Никогда не верьте пользователям (ни программистам: -).
Удачи.Луис.Excel и Visual Basic, используемые для генерации