Im using fread() and fseek() togather to gather parts of a string. I'm not using fread() on the whole line though.
I'd take the whole line but to my knowledge you cannot use fseek() on a character array correct?
`int parse(const char *f, const struct stat *flightD, int type){
//file pointer
Airport_S *Air_Pts = (Airport_S *)malloc(sizeoftype(Airport_S));
FILE *fp;
//char need[10];
char airLineFile[2];
char chkAirPt[3];
fp = fopen(f, "r");
if(type == FTW_F){ // test for 'type' of FTW_F
//check to see if the file opened successfully
if(fp == NULL)
printf("Cannot open file %s", f)
return 1;
while (!(FEOF)){
//fgets(need,10,fp)
//must return zero to parent funtion to continue tree traversal
// ?? While current dir != originally called dir?
//open the file, read it's contents and assess them
fseek(fp, 5, SEEK_SET) //set FP to right before airport code
chkAirPt = fread(chkAirPt,sizeof(char),3, fp)
fseek(fp,0,SEEK_SET);
//combine the airline abbreviation with '.txt'
airLineFile = strcat(fread(airLineFile, sizeof(char), 2, fp),".txt");
//if the struct has no values in it, populate it with this first one.
if(Air_Pts->airport == NULL){
//Set info for very first node
Air_Pts->airPt=strcpy(Air_Pts->airport, chkAirPt);
fseek(fp,0,SEEK_SET);
Air_Pts->fltInfo->airLine=airLineFile;
Air_Pts->fltInfo->next = NULL;
Air_Pts->fltInfo->prev = NULL;
Air_Pts->next = NULL;
Air_Pts->prev = NULL;
//what is the file going to do after this?
}
else if(strcmp(Air_Pts->airport, chkAirPt) == 0){
if(strcmp(Air_Pts->fltInfo->airLine, airLineFile) == 0){
Air_Pts->fltInfo->occ++;
}
else
Air_Pts->fltInfo = addAirline(Air_Pts->fltInfo);
}
// some code
return 0;
else //anything other than a file -or- FTW_D
return 1;
}
}
}`