c语言读取txt文件多行数据

2025-03-13 13:46:10
推荐回答(2个)
回答1:

#include  
#define MAX_LINE 1024 //每行最大字节数

int main() 

    int n=0;
FILE *fp; 
char strLine[MAX_LINE]; //读取缓冲区
if((fp = fopen("result.txt","r")) == NULL) //判断文件是否存在及可读

printf("Open Falied!"); 
return -1; 

while (!feof(fp)) //循环读取每一行,直到文件尾

fgets(strLine, MAX_LINE,fp);     //将fp所指向的文件一行内容读到strLine缓冲区
printf("%s", strLine);     //输出所读到的内容
//DO SOMETHING ELSE

fclose(fp); //关闭文件
printf("\n");
return 0; 
}

用一维数组存的,如果需要用二维数组则用制表符‘\t’拆分就好了。

回答2:

二维数组只能存放相同数据类型. 

你这个明显是两个域的, 所以 前面读到一个字符中, 后面读到一个二维数组中比较好.

比如 可以这样

char s1[100];
char s2[100][10];
int i=0;
while(!feof(fp))
{
    s1[i] = fgetc(fp);
    fscanf(fp,"%s",s2[i]);
    fgetc(fp);
    i++;
}