Autor: Georg 'Black' Wicherski
Ich gehe in folgendem cpp einfach mal davon aus, dass ihr eine Datei exfreundinnen.txt habt, in der ihr Adressen nach folgendem Muster gespeichert habt:
$Name|$Alter|$Gewicht|$Haarfarbe
Der folgende Code liest jeweils aus der geöffneten Datei pFile eine Zeile aus und gibt die entsprechenden Variablen in die Konsole aus.
{ bool bEOF = false; while(!bEOF) { char szName[256], szHairColour[256]; int iAge, iWeight; bEOF = (fscanf(pFile, "%s|%i|%i|%s\n", szName, &iAge, &iWeight, szHairColour) == EOF) printf("%s is %i years old and weights %i kilos, her hair Colour is %s\n", szName, iAge, iWeight, szHairColour); } }
Wie ihr seht ist das Prinzip von fscanf(…) das gleiche wie das von printf(…), bloß dass fscanf(…) auf einem anderen Stream arbeitet.
(Denn fscanf(stdin, …) hat den selben Effekt wie scanf(…).)
Dieses Tutorial stammt aus der ehemaligen Sammlung des resourcecode.de und konnte dank der freundlichen Zustimmung des Autors in das thewall-Wiki übertragen werden.