求助;读取一个混合文本文件的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分。
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