Txt auslesen/einlesen
-
@Sone: Aus dem ersten Post von TE habe ich verstanden, dass er mehrere Zahlen in Datei ein/auslesen möchte, darum habe ich auf "getline" verwiesen. Link habe ich raus gelöscht.
-
c2010 schrieb:
@Sone: Aus dem ersten Post von TE habe ich verstanden, dass er mehrere Zahlen in Datei ein/auslesen möchte, darum habe ich auf "getline" verwiesen.
Genau! Wieso machst du das? Das ist völlig fehl am Platz!
Werner würde böse sein.
-
@Sone: Anhand meine Grundlagenwissen aus die Bücher, war ich der Meinung dass der link wird dem TE weiter helfen und er kann mit die Beispiele was anfangen. Warscheinlich kommts davon, das ich noch mein "denken/logik" aus alte VB zeiten habe und mir fehlt schwer diese in C++ umzusetzen.
-
lcp91 schrieb:
So ich habe mal das hier gemacht:
nur beimir wird dann bei file.getline der "." unterstrichen#include <iostream> #include <fstream> #include <string> using namespace std; int main() { int Zahl;//später anlegen, so lokal wie möglich fstream file;//verpönt. gleich mit konstruktorargument bauen file.open("test.txt",ios::in);//doppelt verpönt. ifstream und konstruktor file.getline(Zahl,sizeof(Zahl));//ganz falsch. das wäre hier read(). //warum nicht textformat, also file>>zahl ? file.close;//verpönt, Destruktor macht es auch. Außerdem Klammern vergessen. fstream file;//verpönt file.open("test.txt",ios::out);//dito file << "5" << endl;//endl ist hier schlecht. Es war '\n' gemeint file.close();//verpönt getchar();//lol, auch verpönt. Die IDE hält Dir das Fenster doch offen. return 0;//Nicht nötig. }Ui, ganze Menge. Vielleicht ist das Buch doch nicht top-aktuell.
-
was ist daran falsch:
file.close();//verpönt??
http://www.cplusplus.com/reference/fstream/fstream/close/
-
c2010 schrieb:
was ist daran falsch:
file.close();//verpönt??
http://www.cplusplus.com/reference/fstream/fstream/close/Der Destruktor schließt doch eh. Dazu müßte das Objekt halt fein lokal sein. Oh, das sollte es eh sein. Sich an open/close-Paare zu binden sorgt am Ende nur für Code, der bei Exceptions in arge Bedrängnis kommt, fürchte ich.
-
die Argumente falsch angegeben:
file.getline(Zahl,sizeof(Zahl));//ganz falsch. das wäre hier read().Ansatzweise Löung wäre: http://www.tsql.de/c_plus_plus/cpp_datei_lesen
http://www.tsql.de/c_plus_plus/cpp_datei_schreibenPS: "Nach Room führen mehrere wege!"
-
c2010 schrieb:
die Argumente falsch angegeben:
file.getline(Zahl,sizeof(Zahl));//ganz falsch. das wäre hier read().Ansatzweise Löung wäre: http://www.tsql.de/c_plus_plus/cpp_datei_lesen
http://www.tsql.de/c_plus_plus/cpp_datei_schreibenPS: "Nach Room führen mehrere wege!"
Deine Quellen sind panne.
Und das passende Zitat wäre "Viele Wege führen von Rom weg".
-
c2010 schrieb:
die Argumente falsch angegeben:
file.getline(Zahl,sizeof(Zahl));//ganz falsch. das wäre hier read().Ansatzweise Löung wäre: http://www.tsql.de/c_plus_plus/cpp_datei_lesen
http://www.tsql.de/c_plus_plus/cpp_datei_schreibenPS: "Nach Room führen mehrere wege!"
Nix gut. Informiere dich mal über RAII. RAII und C++ gehen immer Hand in Hand.
-
Und das endl ist immernoch schlecht. Du willst da nicht flushen.
Der Zeilenumbruch heißt '\n'.
-
@out: Danke für den Tipp, werde bei gelegenheit rein schauen...möchte in Zukunft ordentliche Anwendungen schreiben und nicht ressourcen fressende....scheint mir fehlen noch paar kleinigkeiten in "Wissen".
-
Ich habs ehe schon geschafft kann gekolsed wedrden
-
out schrieb:
RAII und C++ gehen immer Hand in Hand.
Naivling.
Du hast noch nicht viel C++ Code gesehen.