Ciao ragazzi, sto avendo un pò di problemi per quanto riguarda la lettura da file
in C.
Ho un file txt con all'interno:
0*c:\esempio.txt*esempio.txt*c:\*txt
1*c:\esempio2.txt*esempio2.txt*c:\*txt
dove l'asterisco mi identifica il simbolo separatore tra una stringa e l'altra.
Vorrei leggere questo file riuscendo a spezzettare ogni singola stringa,assegnandola in seguito in una char apparte.
codice:
void load(char* path){
char temp[MAX_DIM];
string temp_=malloc(sizeof(char)*MAX_DIM);
if(path!=NULL && table!=NULL){
load=fopen(path,"r");
while(!feof(load)){
if(fscanf(load,"%s\n",temp)!=EOF){
temp_=strtok(temp,"*");
while(temp_!=NULL){
printf("%s\n",temp_);
temp_=strtok(NULL,"*");
}
}
}
}
fclose(load);
}
in questo modo riesco a spezzettare solo la prima stringa nel file e cioè: 0*c:\esempio.txt*esempio.txt*c:\*txt
mi diventa:
0
c:\esempio.txt
esempio.txt
c:\
txt
ma non riesco a capire come posso passare avanti per spezzettare anche la seconda (1*c:\esempio2.txt*esempio2.txt*c:\*txt)
e poi come,una volta che ho avuto i singoli token,porli uno ad uno in variabili diverse... Potete aiutarmi?