23. oktober 2002 - 16:14Der er
5 kommentarer og 1 løsning
Læse fra fil til et struct aray
Hvordan læser man fra en tekst fil, og putter teksten ind i et struct array. F.eks hvis man har et struct aray, hvor hver plads har to variabler: "pris", og "længde", og man har en fil der indeholder: 200kr 10m 250kr 20m osv. hvordan for man den information læst rigtigt ind i aray'et?
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
fscanf() ville nok være den nemmeste funktion at bruge.. kan ikke huske syntaksen.. slå den op i din compilers help funktion.. går udfra du ved hvordan man åbner filer etc?.. men der er da også andre og mere besværlige måder at gøre det på
int main(int argc, char **argv) { Prisliste prisliste[100]; //array med plads til 100 Prisliste elementer int index = 0; FILE *fil; fil = fopen("input.txt", "rt");
if(!fil) return -1;
while(!feof(fil)) { fgets(prisliste[index].pris, 256, fil); //256 er "max number of bytes to be read." fgets(prisliste[index].type, 256, fil); index++; } fclose(fil);
//nu indeholder index det antal prislister der er læst. for(int i=0;i<index;i++) { printf("Prisliste element %i\n", i); printf("pris: %s", prisliste[i].pris); printf("type: %s", prisliste[i].type); }
return 0; }
input.txt indeholder: 200kr 10m 250kr 20m
output bliver: Prisliste element 0 pris: 200kr type: 10m Prisliste element 1 pris: 250kr type: 20m
int main(int argc, char **argv) { Prisliste prisliste[100]; /*array med plads til 100 Prisliste elementer*/ int index = 0; int i; FILE *fil; fil = fopen("input.txt", "rt");
if(!fil) return -1;
while(!feof(fil)) { fgets(prisliste[index].pris, 256, fil); /*256 er "max number of bytes to be read."*/ fgets(prisliste[index].type, 256, fil); index++; } fclose(fil);
/*nu indeholder index det antal prislister der er læst*/ for(i=0;i<index;i++) { printf("Prisliste element %i\n", i); printf("pris: %s", prisliste[i].pris); printf("type: %s", prisliste[i].type); }
return 0; }
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.