求助;读取一个混合文本文件的C语言编程方法

来源:百度知道 编辑:UC知道 时间:2024/05/17 07:54:22
有一个几万行的数据和字符串混合文本文件如下所示:
KAHU China Hongkong 23.456 123.345
HUYT China Taiwan 45.678 234.600
GUUU China Shandong 12.235 56.566
TYUY Argentina 45.233 1.235
... ...(每行有四列数据)
如何编程将其读入到一个结构体中?
我已经尝试过fscanf,但读不出任何数据。
对于fread,可以读出,但SIZE不能控制,可能是因为fread只适用于二进制文件。

如能帮我解决此问题继续赠送100分。

把打开的文件作为参数传进getLine,就可以得到分割好的结果,至于要存为怎样的数据结构,您就自便了^_^
------------------------------------------------------------------
#include <stdlib.h>
#include <ctype.h>
#include <stdio.h>

#define BUF_SIZE 100

void getString(FILE* fin, char* str, char mark){
    int i;
    char c;

    for (i=0,c=fgetc(fin);!feof(fin) && c!=mark; str[i++]=c,c=fgetc(fin));
    str[i]='\0';
}

void getLine(FILE* fin){
    char str[BUF_SIZE];
    getString(stdin, str, ' ');
    printf("\nCODE: %s", str);
    printf("\nLocation:");
    while(1){
        getString(stdin, str, ' ');
        if (isdigit(str[0]))
            break;
        els