Как я должен читать и анализировать (реальные, правильные, полнофункциональные) CSV в C ++?

Я прочел:

Как я могу читать и анализировать файлы CSV в C ++?

но название там вводит в заблуждение. Это не вопрос о чтении CSV как таковых, а только многострочные файлы без разделителей, разделенные запятыми.

Теперь я хочу разобрать фактический CSVs — правильный формат (RFC 4180-соответствует) — с полями в кавычках и с переносами строк, запятыми и двойными кавычками в полях в кавычках; и, по крайней мере, с возможностью ожидать CRLF в качестве разделителя записей, а не LF.

Чтобы быть более конкретным: могу ли я расширить предложения на основе boost-tokenizer из более простой версии вопроса для правильной обработки цитирования (и других вопросов)?

1

Решение

Я настоятельно рекомендую использовать уже существующую библиотеку. Первый, который я нашел на Google, который выглядел разумным, был librfc4180csv.

1

Другие решения

Других решений пока нет …