PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : mit filestream.read() datei auslesen



muge
13-10-2004, 15:46
Hallo zusammen

Ich versuche, ein File mit einem Filestream auszulesen.

ich öffne den stream folgendermassen:

bool init(){
ifstream filestr; /* ist global */
filestr.open(fname.c_str(), ios::binary);
}
in der folgenden Funktion wird gelesen.

void fillstream(){
char buffer[CONST];
cout << filestr.tellg() << endl;
filestr.read((char*) buffer, CONST);
}

Nun ist mein Problem, dass tellg() vor dem readbefehl als Position -1 zurückgibt, was wohl nicht gerade gut ist... Es wird auch tatsächlich nichts gelesen und eof() gibt true zurück.

Die zu lesende Datei ist in Ordnung, wenn ich die mit open() und read() behandle, funktioniert alles wie gewünscht. Ich würde das aber gerne mit streams realisieren.

Kann mir jemand helfen?

thx
muge

muge
13-10-2004, 15:52
Es hat sich erledigt... ich habe den global definierten filestream lokal überschrieben gehabt... :rolleyes: