У меня есть требование экспортировать набор данных в виде файла CSV.
Я потратил некоторое время на поиск набора правил и понял, что существует довольно много правил и исключений при написании файла CSV.
http://knab.ws/blog/index.php?/archives/3-CSV-file-parser-and-writer-in-C-Part-1.html http://bytes.com/topic/c- Sharp / answers / 236875-issues-streamwriter-output-csv http://social.msdn.microsoft.com/forums/en-US/csharpgeneral/thread/0073fcbb-adab-40f0-b768-4bba803d3ccd
Итак, теперь это непростой процесс разделения строк запятыми, я искал существующий писатель CSV либо сторонний, либо (надеюсь!) Включенный в структуру .net.
Изменить: новая ссылка: http://www.thinqlinq.com/Post.aspx/Title/LINQ-to-CSV-using-DynamicObject-and-TextFieldParser
TextFieldParser - это объект VB (на него можно ссылаться из C #), который автоматически анализирует файлы CSV. :)
Мне было интересно, знает ли кто-нибудь какие-нибудь удобные библиотеки .Net (2.0 -> 3.5 и 4.0), которые можно использовать для создания правильно отформатированного файла CSV.
Также, если есть какие-либо наборы правил для создания файлов CSV.
Есть много деталей о читателях CSV и анализе файлов CSV, но не так много о написании (хорошо, я знаю, что это как раз наоборот: P).
http://www.codeproject.com/KB/database/CsvReader.aspx
Любая помощь приветствуется :)
Я нашел другую статью с более подробными правилами CSV: http://www.creativyst.com/Doc/Articles/CSV/CSV01.htm
Изящная сторонняя библиотека - это Linq-to-CSV (не библиотека фреймворка): http://www.codeproject.com/KB/linq/LINQtoCSV.aspx
Спасибо за вашу помощь всем. Я решил, что лучшим решением будет создание простого статического класса, который будет выполнять замену специальных символов (о которых упоминал Крис).
Если бы мне понадобилось, чтобы Linq запрашивал мои CSV-файлы, я бы посмотрел на реализацию Linq-to-CSV в CodeProjects.
Спасибо еще раз :)