Erstes Wort wird nicht eingelesen [geloest]
-
Hallo, habe heute mal einen Code zusammen gebastelt, der mir einen Text in eine Datei schreibt.
#include<iostream> #include<fstream> #include<string> int main() { std::ofstream quelle; std::string quelldateiname; std::cout << "Bitte Zieldatei auswaehlen:\n"; std::cin >> quelldateiname; std::string a; quelle.open(quelldateiname.c_str(), std::ios::binary|std::ios::app|std::ios::out); std::cout << "Bitte ihren Text eingeben:\n"; std::cin.ignore(5000,'\n'); std::cin >> a; //static_cast<std::string>(a); std::getline (std::cin,a); quelle << a; quelle.close(); std::cin.get(); return 0; }
Anfangs war das Problem mit den Leerzeichen, aber nach langer Suche habe ich den Befehl mit
cin.ignore(5000,'\n')
gefunden. Es klappt alles super...mit einer Ausnahme(wie immer ).
Das erste Wort schreibt er nicht in die Datei, woran liegt das?Vielen Dank im Voraus
MfG Stryke
EDIT: Das mit dem static_cast war ein anderer Versuch, der aber nicht hinhauen wollte aus nem char-Array, einfach ignorieren
-
Das erste Wort schreibt er nicht in die Datei, woran liegt das?
In Zeile 15 liest du es, in Zeile 17 verwirfst du es.
-
Uhhh danke SeppJ, vollkommen übersehen