Programmieren - alles kontrollieren 4.938 Themen, 20.667 Beiträge

C -Lesen aus einer Datei

Diablokiller999 / 1 Antworten / Flachansicht Nickles

Habe da ein Problem mit einem Programm.Als C-Newbie lerne ich diese Sprache noch,das Schreiben in eine Datei per fprintf klappt,jedoch weiß ich nicht wie ich aus dieser Datei Text lesen und an eine Variable weitergeben kann oder diesen Text irgendwie ausgeben kann.
In die .txt werden Zahlen geschrieben,ist ein kleines Proggi,nichts großartiges,der Source ist weiter unten.Hoffe mir kann da irgendwer weiterhelfen:


int save (int eingabe[])
{ int i;
FILE *high;

high=fopen("highscore.txt","wt");
fprintf (high,"\\nHighscore\\n\\n");

for (i=0;i {
fprintf (high,"%d\\n",eingabe[i]);
}
fclose (high);
}

int lesen()
{ int i,a[10];
FILE *high;
high=fopen("highscore.txt","r");

printf ("\\n\\nAusgabe:\\n");

for (i=0;i {
fscanf(high,"r",a[i]);
printf ("%d\\n",a[i]);
}
fclose (high);
}

int main(void)
{int i, eingabe[10];
for (i=0;i {scanf ("%d",&eingabe[i]);
}
save(eingabe);

lesen();

system("PAUSE");
return 0;
}

bei Antwort benachrichtigen
mr.escape Diablokiller999 „C -Lesen aus einer Datei“
Optionen

1. Es stehen noch drei extrazeilen am anfang der textdatei, die übersprungen werden müssen.
z.b.
fscanf(high,"%[^\n]\n",buff);
wobei buff ein ausreichend grosser speicherbereich ist (char buff[MAXLINELEN]; , MAXLINELEN nach wahl).

2. So wie
fprintf (high,"%d\n",eingabe[i]);
die zahl als text ausgibt, liest
fscanf(high,"%d",a[i]);
die zahl wieder ein (was sollte "r" bedeuten? evtl. reste vom öffnen mit fopen?)

mr.escape

"The man who trades freedom for security does not deserve nor will he ever receive either." - Benjamin Franklin"Wer seine Freiheit aufgibt, um Sicherheit zu erreichen, wird beides verlieren." - Georg Christoph Lichtenberg
bei Antwort benachrichtigen