Сегодня 8 сентября, вторник ГлавнаяНовостиО проектеЛичный кабинетПомощьКонтакты Сделать стартовойКарта сайтаНаписать администрации
Поиск по сайту
 
Ваше мнение
Какой рейтинг вас больше интересует?
 
 
 
 
 
Проголосовало: 7284
Кнопка
BlogRider.ru - Каталог блогов Рунета
получить код
Блоги на Free-lance.ru (Все вместе)
Блоги на Free-lance.ru (Все вместе)
Голосов: 1
Адрес блога: http://www.free-lance.ru/rss/blogs.php?gr=0
Добавлен: 2008-10-26 20:43:35 блограйдером DrakAngel
 

CsvReader

2012-05-10 01:06:11 (читать в оригинале)

Пару месяцев назад в одном проекте надо было быстро читать CSV файлы. Оказалось:
- из встроенных в .NET-е есть только одно средство Microsoft.VisualBasic.TextFileParser (msdn.microsoft.com/en-us/..., но оно не доступно в Mono
- JET нельзя использовать в серверных приложениях (фактически это часть офиса, а его Microsoft не рекомендует использовать в серверах)
- в интернете есть множество готовых классов, но: либо платных, либо с кучей сообщений о багах.

Кроме того, заказчик утверждал, что система с которой мы интегрируемся экспортирует файлы в соответствии с RFC4180 ( www.ietf.org/rfc/rfc4180.... ) и мы обязательно должны их читать.

Почитав этот RFC, я понял что задача не очень большая, потому написал собственную реализацию:
github.com/shvydky/csvrea...

Фактически, класс CsvReader представляет из себя энумератор строк, каждая из которых – энумератор колонок. Чтение исходного файла происходит по мере продвижения по энумератору. При таком подходе память классу практически не нужна.

Комментируйте/Исправляйте/Используйте :)



 


Самый-самый блог
Блогер ЖЖ все стерпит
ЖЖ все стерпит
по сумме баллов (758) в категории «Истории»


Загрузка...Загрузка...
BlogRider.ru не имеет отношения к публикуемым в записях блогов материалам. Все записи
взяты из открытых общедоступных источников и являются собственностью их авторов.