C语言读取每一行文本

原文地址为: C语言读取每一行文本

因为编译原理要用到,记录一下。

 1 #include <stdio.h> 
 2  
 3  int main() 
 4  { 
 5      char filename[] = "D:\\阶段性学习\\大三上\\1.课程学习\\编译原理\\0903\\实验二\\test.c"; //文件名
 6      FILE *fp; 
 7      char StrLine[1024];             //每行最大读取的字符数
 8      if((fp = fopen(filename,"r")) == NULL) //判断文件是否存在及可读
 9      { 
10          printf("error!"); 
11          return -1; 
12      } 
13  
14      while (!feof(fp)) 
15      { 
16          fgets(StrLine,1024,fp);  //读取一行
17          printf("%s\n", StrLine); //输出
18      } 
19      fclose(fp);                     //关闭文件
20      return 0; 
21  }
22  

2012-10-29   00:40:48

C语言读取指定行文本

 1 #include <stdio.h> 
 2 
 3 char * ReadSpeacialLine(int i) 
 4 { 
 5     char filename[] = "D:\\阶段性学习\\大三上\\1.课程学习\\编译原理\\0903\\实验二\\test.c"; //文件名
 6     FILE *fp; 
 7     int WhichLine=i;             //指定要读取哪一行
 8     int CurrentIndex=0;             //当前读取的行
 9     char StrLine[1024];             //每行最大读取的字符数,可根据实际情况扩大
10     if((fp = fopen(filename,"r")) == NULL) //判断文件是否存在及可读
11     { 
12         printf("error!"); 
13         return NULL; 
14     } 
15 
16     while (!feof(fp)) 
17     { 
18     
19         if (CurrentIndex==WhichLine)
20         {
21             fgets(StrLine,1024,fp);  //读取一行
22             printf("%s", StrLine); //输出
23             return StrLine;
24         }
25         fgets(StrLine,1024,fp);  //读取一行,并定位到下一行
26         CurrentIndex++;
27 
28         //printf("%s", StrLine); //输出
29     } 
30     fclose(fp);                     //关闭文件
31     return NULL; 
32 }

2012-10-29  01:17:58


转载请注明本文地址: C语言读取每一行文本

猜你喜欢

转载自blog.csdn.net/kkwant/article/details/81133814
今日推荐