Re: Auslesen einer Datei



Tom Seidel wrote:
Hallo!

Ich möchte gerne eine Datei auslesen, die folgendes Format besitzt:

NAME1,VORNAME1,ORT

Diese Dateien werden als dann in einem Array des Typ DESC[100]
gespeichert, worunter sich folgende Struktur verbirgt:

typedef struct {
char *name;
char *vorname;
char *ort;
} DESC;

Je nachdem wie viele Zeilen die Datei besitzt, werden also von den 100
möglichen Array-Elementen 1, 2, 3, n (mit n < 100) Elemente befüllt.

An einer anderen Stelle möchte ich nun die Werte dieses Arrays wieder
ausgeben, weiß aber nicht, wie ich das Ende der Beidingung für die
for-Schleife formulieren soll:

for(i = 0; i < 100, i++) {
printf("Name: %s, Vorname: %s, Ort: %s", array[i].name,
array[i].vorname, array[i].ort);
}

Hier kommt es natürlich so einem Fehler, sobald array[i] nicht mehr
einen Wert besitzt.

Wie umgeht man nun ein solches Problem?

Entweder durch Merken wieviele Elemente eingelesen wurden (und dan die
Ausgabeschleife nicht bis 100 sondern nur bis zu dem gemerkten Wert laufen
lassen), oder durch eine Ende Markierung, d.h. den n+1 ten Eintrag beim
Einlesen mit NULL besetzen (bzw. das gesammte Array mit 0 initialisieren)
und dann bei der Ausgabe (zusätzlich) darauf abprüfen:
for(i = 0; i < 100 && array[i].name != NULL, i++) {
printf("Name: %s, Vorname: %s, Ort: %s", array[i].name,
array[i].vorname, array[i].ort);
}



Danke für die Antworten!

Tschö, Jojo


.



Relevant Pages

  • Re: upgrade von isa2004 enterprise auf 2006 enterprise, fehler 0xc00403a4
    ... im 2006er auch auf dieser Ebene wieder importiert. ... Die Datei kann nicht importiert werden. ... Objekt vom Typ "Richtlinienregeln", das nicht in ein Objekt vom Typ ... "Array" importiert werden kann. ...
    (microsoft.public.de.german.isaserver)
  • Re: Textdatei schnell auslesen und durchsuchen!
    ... > Stellen die benötigten Infos zusammen suchen. ... > komplette Array. ... So lange die Textdatei nicht zu groß ist funktioniert das ... > auch bestens aber wenn dann eine Datei kommt die an die 22000 Zeilen hat ...
    (microsoft.public.de.vb)
  • CSV Dateien
    ... CSV-Dateien auswerten. ... Das erste Skripte sollte nun die Datei einlesen und eine Art Filter ... weiteres Array splitten und ein neues Array ...
    (microsoft.public.de.inetserver.iis.asp)
  • Re: Sehllexecute und mailto mit Attachments
    ... dass Delphi bei dynamischen Arrays am Anfang ... geschehen muss, wo auch dein Datei Array deklariert ist, da ansonsten ... Beim verlassen der Funktion existiert zwar dein verweis auf die Adresse ... der Variable "Datei" noch, aber der Speicherbereich ist beim verlassen ...
    (de.comp.lang.delphi.misc)
  • Automatisiertes Sortieren von csv-Dateien
    ... Mein Ansatz ist, dass ich die csv-Datei in ein Array einlese, ... dieses Array dann sortiere und die Datei wieder speichere. ... dort zu sortieren und dann wieder ...
    (de.comp.lang.c)