从 csv 文件中读取列

reading in columns from csv file

我正在尝试编辑一些从 txt 文件中读取列的代码,以便能够从 csv 文件中读取。我遇到的主要问题是 txt 文件中的数据存储为:1 2 3 4。在 csv 文件中,数据看起来像:“1”、“2”、“3”、“4”。我将在下面包含我当前的代码(适用于 txt)。编辑我当前的代码还是重新开始更容易?

ifstream fin;
fin.open("filepath");
char temp[200];
while(!fin.eof())
   {
    fin.getline(temp,200);
    if(sscanf(temp,"%f %f %f %*f\n",&var1,&var2,&var3)!=3)
        {
        continue;
        }
   printf("%f %f %f \n",var1,var2,var3);
   }

不,您不必更改代码。将您的 scanf 函数更改为

    if(sscanf(temp, "\"%f\", \"%f\", \"%f\", \"%*f\"\n",,&var1,&var2,&var3)!=3)

匹配新格式,它应该可以工作。