在C中从.txt文件读入数组?
我想将存储在.txt文件中的4列中的每一列读取到各自的数组中,每个列之间用空格隔开。文本文件可能有数百行,因此需要一直读取到文件末尾 例如:在C中从.txt文件读入数组?,c,arrays,C,Arrays,我想将存储在.txt文件中的4列中的每一列读取到各自的数组中,每个列之间用空格隔开。文本文件可能有数百行,因此需要一直读取到文件末尾 例如: 3.4407280e+003 6.0117545e+003 8.0132664e+002 2.5292922e+003 3.4163843e+003 5.9879421e+003 7.7792044e+002 2.5058547e+003 因此通常是数组1,包含第一列和最左边列的所有行,依此类推。是您的朋友: static const int MAX_F
3.4407280e+003 6.0117545e+003 8.0132664e+002 2.5292922e+003
3.4163843e+003 5.9879421e+003 7.7792044e+002 2.5058547e+003
因此通常是数组1,包含第一列和最左边列的所有行,依此类推。是您的朋友:
static const int MAX_FILE_ROWS = 200;
double lines[MAX_FILE_ROWS][4];
FILE *file = fopen("myfile.txt", "r");
for (int i = 0; i < MAX_FILE_ROWS; i++)
{
if (feof(file))
break;
fscanf(file, "%lf %lf %lf %lf", &(lines[i][0]), &(lines[i][1]), &(lines[i][2]), &(lines[i][3]));
}
fclose(file);
static const int MAX_FILE_ROWS=200;
双线[MAX_FILE_ROWS][4];
FILE*FILE=fopen(“myfile.txt”、“r”);
对于(int i=0;i
然后,行应该包含您需要的数据。您希望它具有什么数据结构?到目前为止你得到了什么?它是如何工作的?你应该指定一行上是否会有超过4个数字。啊,谢谢你,richard,要仔细检查方法,我如何将它打印到屏幕上。感谢如果您需要知道字段是否存在,请不要忘记添加对读取元素数量的检查,并将行[row][column]的值设置为某个哨兵值。@user1377485:您可以在fscanf()行--printf(“%f%f%f%f\n”,行[i][0],行[i][1],行[i]之后立即包含一个printf(或fprintf(),视情况而定)[2] ,第[i][3]行;——任何错误都是免费的谜题;)嘿,谢谢朱莉的印刷品,现在很好用了!我想我会做一些调整!如果我卡住了,我会再发一次:)谢谢大家:)@user1377485没问题,一定要接受答案!