Ansi String reinschreiben in eine Textdatei mit fstream operator "<<"
-
Hallo leider habe ich festgestellt das fstream mit AnsiString nicht arbeitet.
Hmmm ich habe ein Problem ein Mene werte in eine Textdatei zu übergebenIch bekomme volgende Fehlermeldung wenn ich die Werte reinschreiben will (queltext boald)
Ich weiß nicht vileicht kann ich umkonventiren oder eine andere LössungE2094 'operator>>' ist im Typ 'ifstream' für Argumente des Typs 'AnsiString' nicht implementiert
// Erzeuge eine Textdatei fals sie nicht exestiert ifstream f ("C:\\auswahl.txt"); if( f.fail()) { ofstream f ("C:\\auswahl.txt"); f.close(); } AnsiString a; for (int i=0; i<clb_win2k->Items->Count; i++) // { if (clb_win2k->Selected[i]) // wenn i= Auswahl true { a = clb_win2k->Items->Strings[i]; [b] f>>a;[/b] } }
-
Die Fehlermeldung sagt dir doch schon den Fehler.
a<<f.c_str();
Aber sieh mal nach ob dein ofstream wirklich bereit ist Daten zu empfangen.
-
f << a.c_str();
-
hmmmm danke geht aber leider auch nicht
E2094 'operator<<' ist im Typ 'ifstream' für Argumente des Typs 'char *' nicht implementiert
-
ifstream ist ein Inputstream, da kannst du nichts reinschreiben.
Du musst einen ofstream verwenden.
// Erzeuge eine Textdatei fals sie nicht exestiert ofstream f ("C:\\auswahl.txt"); if( f.good()) { AnsiString a; for (int i=0; i<clb_win2k->Items->Count; i++) // { if (clb_win2k->Selected[i]) // wenn i= Auswahl true { a = clb_win2k->Items->Strings[i]; f << a.c_str(); } } }
-
i für input.
o für output.
-
wow geil danke
war glaube auch meine problem ich wusste den unterschied nicht zwischen ofstream und ifstream danke danke
-
hmmm noch mal eine grage ich habe festgestellt das
mit ofstream di datei gleich erzeugt wird aber ich wollte doch dam man zu erst prüft ob sie forhanden ist oder nich und dann erst erzeugt
-
Na dann testest du erst mit einer ifstream instanz ob die Datei existiert und wenn nicht erzeugst deine ofstream instanz und arbeitest damit.
Das hast du ja eigentlich auch schon gemacht (1. Beitrag).
-
ofstream f ("C:\\auswahl.txt",ios::app);