Каков наилучший способ разобрать CSV файл с многострочными полями и экранированными кавычками?
Например, этот CSV
First field of first row,"This field is multiline
but that OK because it enclosed in double qoutes, and this
is an escaped "" double qoute" but this one "" is not
"This is second field of second row, but it is not multiline
because it doesn't start
with an immediate double quote"
выглядит в Excel следующим образом:
Я как-то просто сохраняю состояние, имею флаг, говорящий, что поле, которое я сейчас читаю, началось с qoute и т.д.? Кроме того, что происходит с случаями, когда есть двойные кавычки, но не в начале поля, т.е. , "ABC"
или ,"item "" item" ""
считаются недопустимыми? Кроме того, кавычки ""
экранированы, если не внутри кавычки? Excel не выглядит.
Есть ли другие угловые случаи, которые я мог пропустить?