Dateiinhalt in einem Array speichern

@badday: Das letzte Codestück ist doch überflüssig. Er hat doch sowieso eine Schleife, in der er die Zeilen erfasst und analysiert, deshalb kann er da auch ein i++ hinschreiben!
 
Ähm... Ich dachte, er wollte die Zeilenzahl vor der anderen Schleife um sein statisches Array dementsprechend anzulegen (?). Mag sein, dass ich mich irre, ich hoffe ja immer noch auf Gewitter heute ;)

Gruß,

badday
 
Wo ist da der Sinn?
Er könnte einen Vektor benutzen.
Ja, habe ich auch deutlich hingeschrieben:
Musst du eigentlich nicht wissen. Verwende einfach einen Vektor und darauf push_back().

Das war nur für den Fall, dass er mit seinem Buch eben erstmal mit Arrays arbeitet und daher noch keine Container verwenden will. Was sicher nicht zu empfehlen ist, und was ein Buch auch gleich am Anfang behandeln sollte, wie ich finde.

Du hast natürlich recht, aber ich habe nie das Gegenteil behauptet:)

Gruß,

badday
 
Bitte mal langsam.
Hab da gerade ein Buch vor mir liegen und versuche das zu verstehen, was ihr schreibt ;-)
Vielleicht mach ich das ganze mal ein bisschen konkreter:
Ich möchte zuerst die Anzahl der zeilen herausfinden, dann ein Array mit der Anzahl an Zeilen anlegen, die die Datei hat:
Vielleicht mal ein amüsantes Beispiel für euch wie ichdas versucht habe:
C++:
  int Zeilen;
     while (!end(DateiInhalt)) {
            Zeilen += DateiInhalt.find(\n);
     }
Dann mach ich noch so eine While Schleife die ancheinem Zeilenumbruch sucht und dann jeweils die Zeile in ein Array speichert.
Dann geh ich jedes Element des Array wiederum durch und suche nach dem Zeichen |.
Ich kopiere dann jedesmal von der ersten Postition bis zum Rückgabewert von find(\n) abwechselnd in 4 verschiedeine Arrays.

Hoffe das hat man jetzt verstanden.

mfg
 
Wie ComFreek auch schon gesagt hat: Es ist besser, entweder Vektoren oder dynamische Arrays zu verwenden.
Willst du wirklich weiter mit statischen Arrays arbeiten, sollte mein Code oben genau das machen:


C++:
int i;
for(i=0; datei_stream.getline(dummy_string); i++)
{
}

Am Ende der Schleife enthält i die Zeilenzahl. Aber wie gesagt: Gut ist diese Lösung nicht.


Gruß,

badday
 
Ja ebr mein Problem ist, das ich noch 0 Ahnung von Vektoren habe, also muss ich mir das jet zt dann mal durchlesen.
 
@kannaum: Bei meinem 1. C++ Buch habe ich auch nicht der Reihe nach gelesen. Aber mach es wie du es willst.
 
Ok ,habe jetzt schon ein bisschen Ahnung von Vektoren.
Aber kann mir bitte jemand noch kurz ein eispiel geben, das zu meinem Problem passt.
Das wäre wirjlich sehr nett.

mfg
 
Habe im Beispiel auf der 1. Seite auf Vektoren verwendet. Weiß nicht genau, was du nun willst, stelle die Frage bitte etwas genauer.


Gruß,

badday
 
Zurück