在C ++中处理CSV文件

我有一个要求,我需要从下面显示的csv文件中搜索产品条形码。

Sr. No.,Product Barcode,Product Description,Discount (%),Price Per Unit 1,011001,TOILET PAPER,5,40 2,011002,BATHING SOAP,0,27 3,011003,MOISTURIZER,3,95 4,011004,SHAMPOO,0,115 5,011005,CONDITIONER,5,155 6,011006,TISSUE,10,60 7,011007,HAIR OIL,0,75 8,011008,HAIR GEL,0,96 9,011009,BODY LOTION,7,195 10,011010,FACE WASH,0,85 

当用户输入条形码时,它应该搜索csv文件并且应该获取每单位价格以及折扣并生成账单。 这必须在C ++中实现。 在开发的后期阶段,我还需要更新csv文件内容。 例如,如果它有一个“数量”列,显示特定产品的库存,并且该产品已售出,我还需要更新csv字段数量。

请指导我如何搜索csv文件并选择字段。 我搜索网但找不到满意的答案。

我正在使用Bloodshed Dev C ++。

我可以使用getline()提取输入条形码的产品价格并生成帐单。

干杯男人为你的目的。

我建议使用libpcre

你可以这样做 –

 #include  #include  #include  #include  using namespace std; using namespace pcrepp; int main(int argc, char **argv) { string pat = ","; vector v; string s; Pcre p(pat); int ctr; while( getline(cin, s) ) { v = p.split(s); vector::iterator i; for(i=v.begin(),ctr=0;i!=v.end();i++,ctr++) { if(ctr==2) { cout << *i << endl; } } } return 0; } 

我同意这对于提取第二列或第n列可能有点过分,但我喜欢这种方法,因为pcre在你希望从CSV文件中提取的文本方面给你很多自由。