C语言怎么读取txt文件中一行的数据?

2024-10-28 11:33:02
推荐回答(4个)
回答1:

  1. 打开文件 fopen("需要打开的路径")

  2. 然后使用fgets函数读取行

  3. #include 
    #include 
    #include 
    #define MAX_LINE 1024
    int main()
    {
     char buf[MAX_LINE];  /*缓冲区*/
     FILE *fp;            /*文件指针*/
     int len;             /*行字符个数*/
     if((fp = fopen("test.txt","r")) == NULL)
     {
     perror("fail to read");
     exit (1) ;
     }
     while(fgets(buf,MAX_LINE,fp) != NULL)
     {
     len = strlen(buf);
     buf[len-1] = '\0';  /*去掉换行符*/
     printf("%s %d \n",buf,len - 1);
     }
      return 0;
    }

回答2:

ifstream 的 getline 分隔符用行尾,要是有问题等我回到机器那再给你写几行。。。

对不起才看到不是c++

回答3:

在文本文件模式下,每行的末尾是固定的字符 0D 0A , 这两个字符标志着有换行,
其中0D对应ASCII码里的 回车键'\r', 0A对应ASCII码里的 换行符'\n'

所以,你只要能判断连续的两个字符是0D 0A那么就意味着换行了。

你读的时候,一次读到一个大的buffer里,然后进行字符的比较判断,过滤出相应的数据。

回答4:

用fgets函数