首页 > 解决方案 > 如何读取带有空白单元格的表单 CSV 文件(所有单元格都是字符串)

问题描述

当我加载 CSV 文件并到达第一个空白(NULL)的单元格时,它将读取该行中的所有其他单元格作为空白(NULL)。我试图将行中的每个单元格读取到 Char 变量。如何读取所有带有空白单元格的行(其位置是随机的)?CSV 文件中的第一行是类别,我可以完美地阅读它,因为其中没有 NULL 单元格。

char line[1000];
            if(FileSelectPopup ("", "*.csv", "", "ballistic", VAL_LOAD_BUTTON, 0, 1, 1, 0, filename))
                {
                    fp = fopen (filename, "r");
                    int i=0;
                    while(fgets(line, 999,fp))//stop when the file end
                    {

                    sscanf(line,"%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^','],%[^'\n']\n",data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],
                          data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++],data[usernum][i++]);
                    usernum++;
                    i=0;

                    }
                    usernum--;

                }

标签: ccsv

解决方案


推荐阅读