如果嵌入的双引号字符由一对双引号字符表示,是否有任何方法可以使用 c++ boost tokenizer 解析 CSV?
Wiki 的文章Comma-separated values说每个嵌入的双引号字符必须由一对双引号字符表示,并提供以下 csv 文件示例:
Year,Make,Model,Description,Price
1997,Ford,E350,"ac, abs, moon",3000.00
1999,Chevy,"Venture ""Extended Edition""","",4900.00
1999,Chevy,"Venture ""Extended Edition, Very Large""",,5000.00
1996,Jeep,Grand Cherokee,"MUST SELL!
air, moon roof, loaded",4799.00
默认的 boost tokenizertypedef tokenizer< escaped_list_separator<char> > tokenizer;
会删除嵌入的配额,但如果使用 \" 而不是 "",则可以正常工作。