在C中如何将逗号分隔的数字从文件读入多维数组
我想写一个函数,在一个文件中用逗号分隔的数字创建整数数组,如下所示: 1, 54520.00000, 86397.00000, 0 2, 54440.00000, 87200.00000, 0 3, 51280.00000, 97600.00000, 0 4, 50000.00000, 100000.00000, 0 5, 48880.00000, 100000.00000, 0 1, 54520.00000, 86397.00000, 0 2, 54440.00000, 87200.00000, 0 3, 51280.00000, 97600.00000, 0 4, 50000.00000, 100000.00000, 0 5, 48880.00000, 100000.00000, 0 第一列是每行的编号,因此我需要的数据实际上是接下来的三列。在C中如何将逗号分隔的数字从文件读入多维数组,c,fread,fseek,C,Fread,Fseek,我想写一个函数,在一个文件中用逗号分隔的数字创建整数数组,如下所示: 1, 54520.00000, 86397.00000, 0 2, 54440.00000, 87200.00000, 0 3, 51280.00000, 97600.00000, 0 4, 50000.00000, 100000.00000, 0 5, 48880.00000, 10
我的问题是:
fscanf()
在循环中使用以下fscanf()
,直到到达文件末尾:
int i,j
double x,y;
while (fscanf(fp, " %d , %f , %f , %d", &i, &x, &y, &j) != EOF) {....}
列的数量是固定的?是的,列的数量是固定的。这必须是重复的,对吗?你说的“重复”是什么意思?意味着以前有人问过这个问题,而且这个网站上可能已经有答案了谢谢!我应该在while循环中将x、y、j分别指定给myarray[I][0]、myarray[I[1]、myarray[I][2]吗?我只是尝试了一下,但没有成功:(对不起,我犯了一个错误。它工作得很好!非常感谢!顺便问一下,关于如何读取最后一列的第一个数字,你能给我一个提示吗?你不需要这个部分“%*[^\n]”。只需阅读下一个“%d”,将忽略“\n”。谢谢Mohamed KALLEL和Alex Oliveira。这是我见过的解决问题的最简单方法。