Datei einlesen: einzelne Zeichen erkennt Programm nicht
-
Hallo, meine zweite Frage für heute:
Ich lese Daten aus einer Textdatei ein. Komischerweise aber erkennt mein Programm kein "P"!!!! Woran kann das liegen????
Wenn ich "PAPA" einlese, erscheint im Endeffekt nur "AA"!!!
Kann mir jemand helfen??Das Einlesen erfolgt ganz normal mit
file.getline(line, "\n");Vielen Dank!!!

-
Dieser Thread wurde von Moderator/in estartu aus dem Forum MFC (Visual C++) in das Forum C++ verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Erstmal ist der zweite Parameter von getline() die Anzahl der zu lesenden Zeichen (und der dritte, wenn vorhanden, das Tennzeichen als char) und zweitens kannst du mal bitte ein vollständigeres Beispiel angeben, was kaputt ist?
PS: Dein Code ist sowieso falsch, richtig wäre eins von den folgenden:
//A char line[100]; cin.getline(line,100,'\n'); //B string line; getline(cin,line,'\n');
-
Ja, mit dem ersten Aufruf mach ich das (ich hatte den nicht mehr genau im Kopf...sorry!).

Ich rufe halt eine Textdatei auf, die bestimmte schluesselwoerter enthaelt. Eines davon enthaelt u.a. ein "P" (-> KAPAZITÄT). Ich lese zuerst die ganze Datei ein, und lasse dann nach den Schluesselwoertern suchen. Leider "sagt" mir mein Programm immer: KAPAZITÄT gibts nicht! Obwohl es natuerlich genau so in der Textadtei steht! Das suchen erfolgt per
CString dateiInhalt; int ind = 0; ind = dateiInhalt.Find(0, "KAPAZITÄT");Aber das Problem taucht nicht erst beim Suchen auf, ich teste schon vorher per MessageBox, was er einliest, und schon dort schreibt er nur "KAAZITÄT"
So, was soll ich noch schreiben?! Ich denke, das umreisst mein Problem, oder nicht?!