如何检索文本文件中的行

时间:2010-12-20 20:53:07

标签: c parsing text filestream

我开始用C语言编程,我在阅读文本文件方面遇到了一些问题。让我解释一下。

我有一个文件文本,其组织方式如下:

Tony 
12.23
John
09.45
Tayris
03.99

我想检索少于十张的所有笔记并显示它们,但我不能......

有人可以帮助我吗?

非常感谢。

2 个答案:

答案 0 :(得分:3)

C提供了四个可用于从磁盘读取文件的函数:

  1. <强> fscanf()函数

    面向领域的职能。

  2. <强>与fgets()

    线路导向功能。

  3. <强>龟etc()

    面向字符的功能

  4. fread()

    块导向功能。

  5. 有关详细信息,请参阅 this article

答案 1 :(得分:2)

查看fgets功能。它将返回(并包括)字符串字符的结尾(如果需要,可以从目标字符串中删除它)。

http://people.cs.uchicago.edu/~iancooke/osstuff/ccc.html提供了一个示例:

  

这是一个更复杂的例子。   Readline()使用fgets()来读取   MAX_LINE - 进入1个字符   缓冲区'in'。它剥离前面   空格并返回指针   第一个非空白字符。

 char *Readline(char *in) {
   char *cptr;

   if (cptr = fgets(in, MAX_LINE, stdin)) {
     /* kill preceding whitespace but leave \n 
        so we're guaranteed to have something*/
     while(*cptr == ' ' || *cptr == '\t') {
       cptr++;
     }
     return cptr;    
    } else {
     return 0;
   }
 }

我认为这应该足够了。