LLpresident Geschrieben 6. Dezember 2002 Teilen Geschrieben 6. Dezember 2002 hey. wie kann ich in einer if-anweisung abfragen ob das file was ich auswerte eof erreicht hat? quelltext: char E_Mail; char Test[255]; int i = 0; ifstream E_Mail_Anzeige("E_Mailaddressen.txt", ios::in); while(!E_Mail_Anzeige.eof()) { E_Mail_Anzeige.get(E_Mail); if(E_Mail_Anzeige == E_Mail_Anzeige.eof()) { break; /*i--; Test[i] = '\0';*/ } Test[i] = E_Mail; memToAddress->Text = Test; i++; } ohne die if-anweisung funktioniert es aber er zeigt das letzte zeichen doppelt an. wie kann ich das unterbinden? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Guybrush Threepwood Geschrieben 6. Dezember 2002 Teilen Geschrieben 6. Dezember 2002 Hi, das Problem ist wenn du dir mit E_Mail_Anzeige.get(E_Mail); das letzte Zeichen holst ist er noch nicht am Dateiende, er läuft die Schleife also nochmal durch, merkt bei der get() Funktion das er am Ende ist (holt also nichts mehr), schreibt aber weiter unten nochmal das zuletzt geholte Zeichen an das Ende von Test. Am besten prüfst du bevor du an Test anfügst nochmal ob das Dateiende erreicht wurde. Die Abfrage in deiner if Anweisung verstehe ich aber nicht, was bedeutet E_Mail_Anzeige == E_Mail_Anzeige.eof())? Gruß Guybrush Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
LLpresident Geschrieben 6. Dezember 2002 Autor Teilen Geschrieben 6. Dezember 2002 das sollte sone art abfrage sein ob die txt-datei zu ende ist. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
LLpresident Geschrieben 6. Dezember 2002 Autor Teilen Geschrieben 6. Dezember 2002 @guybrush hab deinen tip bedacht und es auf folgende weise gelöst: ifstream E_Mail_Anzeige("E_Mailaddressen.txt", ios::in); while(!E_Mail_Anzeige.eof()) { E_Mail_Anzeige.get(E_Mail); if(E_Mail != '\0') { Test = E_Mail; } memToAddress->Text = Test; i++; E_Mail = '\0'; } und funktioniert :marine Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Guybrush Threepwood Geschrieben 6. Dezember 2002 Teilen Geschrieben 6. Dezember 2002 ich würde aber anstatt auf '\0' zu prüfen einfach if(!E_Mail_Anzeige.eof()) schreiben, weil es könnte ja auch '\0' irgendwo in der Datei stehen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.