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?

Rispondi quotando