PDA

Visualizza la versione completa : [c]leggere stringhe e interi da file


barnico
19-11-2008, 17:32
E' da tanto tempo tempo che non programma in c, tanto che ricordo poco, adesso vorrei risolvere un problemino che quello di leggere da un file delle stringhe e degli interi, mi spiego meglio, il file contiene dei record dove ogni record contiene 6 campi:

stringa numero numero numero numero numero

non riesco a leggere i numeri e considerarli come interi, e da considerare che il file contiene centinaia di record.

menphisx
19-11-2008, 19:56
Ma come sono memorizzati ?
Dentro c' scritta una struttura a grandezza fissa, oppure sono memorizzati come stringhe ?
Puoi postare un'esempio ?

MItaly
19-11-2008, 21:09
Supponendo che i numeri siano interi con segno:


fscanf(stream,"%s %d %d %d %d %d",stringa, &numero1, &numero2, &numero3, &numero4, &numero5);
.

barnico
20-11-2008, 10:08
i record sono memorizzati in un file di testi .txt e sono divisi da un carattere di tabulazione "\t", i numeri sono sempre positivi l'impostazione sempre fissa:
stringa 54 60 9 10 3

menphisx
20-11-2008, 10:10
Il codice di MItaly va bene.

barnico
20-11-2008, 10:28
ho fatto cos ma va in errore:


FILE *stream = fopen("record.txt","r");
while(fscanf(stream,"%s %d %d %d %d %d",stringa,&numero1,&numero2,&numero3,&numero4,&numero5)!=EOF)
{
printf("%s",stringa);
}

barnico
20-11-2008, 11:07
ok risolto era un errore di sintassi.
grazie

Loading