Text in eine Variable speichern
-
Hallo
Ich will einer Variablen einen Text zuweisen und dann den inhalt der Variable in ein txt file speichern
char test[200];
cin >> test;
fstream f;
f.open("test.txt",ios::out);f << test << endl;
f.close();
Das ist der code den ich habe aber das Problem ist das nur das erste Wort gespeichert wird. Alles nach dem ersten Leerzeichen wird weggelassen.
Kann mir bitte einer helfen.
Danke
-
Das wird ein Problem von cin sein.
Ich glaub der nimmt nur bis zu Leerzeichen auf.
Ich würds an deiner Stelle mal mit getline() (ich glaub zumindest das die Funktion so heist ^^) probieren.
Genau kann ichs dir aber grad auch nicht sagen, hab schon lange nix mehr in der Konsole gemacht.
Probiers einfach mal ... wenn du es nicht hinbekommst sag bescheid dann schau ich nochmal genau nach!Mfg Nico
-
Ok habs nicht lassen können und eben kurz nachgeschaut.
Machs einfach so ...#include <iostream> #include <fstream> #include <string> // Dann gehts schneller und einfacher int main() { string Eingabe; // Zeichenkette getline(cin, Eingabe); // bis Return-Taste gedrückt wird einlesen // Das kennste dann ja... fstream f; f.open("test.txt",ios::out); f << Eingabe << endl; f.close(); return 0; }
Ich denke so sollte es funktionieren.
-
oder auch einfach mit
cin.get (test, 199);