读取文本文件的精确列并将值/文本放入向量中

时间:2013-07-24 19:07:12

标签: c arrays file text multiple-columns

我正在构建一个代码,我必须在其中读取包含多种类型数据的文本文件。这是文件的一部分:

1000000 923475248-18 Ramiro A. Xavier
999999 923501748-58 Ramiro A. Wolski 
999998 923517472-32 Ramiro Q. Wollinger 

(它有1000000行)

在阅读之后,我必须选择我想要使用的数据类型,并且我必须按字母顺序或按月/下降顺序对数字进行排序。

我已经有了对它进行排序的代码(冒泡排序),但在我的代码中,我必须自己输入数据。所以我的问题是:

如何阅读此文件的一个特定列并将其内容保存在阵列上?

我作为一个项目工作,我不允许使用C ++语言或更复杂的结构,如(" cout<<,buf,aot,tmpline")

我设法读取文件并使用以下代码打印其中的内容:

#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <string.h>
#include <time.h>
int main()
{
    FILE *fp;
    char c;

    fp = fopen("list1000000.txt","r"); 
    if(!fp)
    {
        printf( "Error");
        exit(0);
    }
    while((c = getc(fp) ) != EOF) 

    printf("%c", c);

    getch(); 
    return 0;
    fclose(fp);
    getch();
    return 0;
}

谢谢,   爱德华

1 个答案:

答案 0 :(得分:0)

  1. 读一行。
  2. 扫描各个部分(数字,名字,中间名,姓氏等)
  3. 将元素放入包含所有元素的结构中。将指针放在数组中的结构中。
  4. 使用一个或多个元素作为键,根据需要对结构进行排序。