2016-03-20 13 views
-1

Ich brauche Hilfe beim Verbessern des Schreibens von Daten in eine Textdatei. Ich habe es geschafft, die Datei erfolgreich zu schreiben, aber das Programm lässt mich nur eine Zeichenfolge ohne Leerzeichen speichern. Also brauche ich Hilfe, um einen vollständigen Satz mit einer Variablen in eine Datei zu schreiben. 'So geben Sie einen vollständigen Satz in eine TXT-Datei ein C++

Hier ist der Code für die, das Programm soll eine grundlegende Agenda/Planer sein.

~ edit ~ Ich habe vergessen zu erwähnen, dass ich versuche, die Daten zu cin. Beispiel: Sie fragt, was Ihre Schulaufgabe ist und Sie geben "Hausaufgaben machen" ein und drücken Enter.

-shortened Code

#include <iostream> 
    #include <fstream> 
    #include <stdlib.h> 
    #include "agenda.h" 

    using namespace std; 

    int main(){ 

    string write; 
    string title; 
    string answer; 
    string school = "sch"; 
    string birth = "bir"; 
    string quit = "quit"; 
    string view = "v"; 
    string append = "a"; 
    string clear = "c"; 
    string back = "b"; 
    string yes = y; 

    cout << "------Welcome User!------\n"; 



       cout << "\nSCHOOL PLANNER\n\n"; 

       cout << "Pick your option: \n\n" << 
         "view(v)\n" << 
         "append(a)\n" << 
         "clear(c)\n" << 
         "back(b)\n"; 
       cin >> answer; 

       if(answer == view){ 

        system("cat ~/Desktop/agenda2/school.txt"); 

       } 
       else if(answer == append){ 

        title = "Date: "; 
        cout << "Date: "; 
        cin >> write; 
        Write_School(title, write); 

        title = "Class: "; 
        cout << "Class: "; 
        cin >> write; 
        Write_School(title, write); 


//where The problem is 
        title = "Assignment: "; 
        cout << "Assignment: "; 
        cin >> write; 
        Write_School(title, write); 

        cout << "[DATA SAVED]"; 
       } 
       else if(answer == clear){ 
        cout << "Are you sure you want to delete the files forever?(y/n)"; 
        cin >> answer; 
        if(answer == yes){ 

         Clear_Text(); 
         system("clear"); 
         cout << "Text file emptied.\n\n"; 
        } 
        else{ 
         cout << "All data saved.\n\n"; 
        } 
       } 
       else{ 
        cout << "[ERROR INVALID ENTRY]\n\n\n"; 
       }  
return 0; 


      } 

//here is the header file 

#ifndef agenda 
#define agenda 
#include <iostream> 
#include <string> 
#include <fstream> 
#include <stdlib.h> 
#endif 
using namespace std; 

int Write_School(string title, string write){ 
    ofstream myfile; 

    myfile.open("school.txt", ios::app); 
    myfile << title; 
    myfile << write; 
    myfile << "\n"; 
    myfile.close(); 
} 

int Clear_Text(){ 
    system("clear"); 

    ofstream myfile; 

    myfile.open("school.txt"); 
    myfile << "~School Agenda~\n\n"; 
    myfile.close(); 
} 

Randnotizen in Ubuntu Terminal -compiled -cin.get und cin.getline funktionierte nicht (es sei denn ich sie falsch verwendet) -Been für eine Suche antwort irgendwo für eine lange zeit das ist mein letzter ort bevor ich frustriert getötet werde!

+0

Setzen Sie Räume, wie Sie sie brauchen: 'Myfile << Titel << ' '; ' –

+0

Bitte lesen Sie dies: http://StackOverflow.com/Help/Mcve – anukul

Antwort

0

Hallo, ich bin Dummer Kopf völlig anonym .. Ich glaube, Sie müssen erklären, wo Sie Ihre Eingabe gonna be ..

Beispiel .. dies ist, wie seine eigenen Dateinamen erstellen .. und fügen Sie die txt in Ihrer Datei. Ich habe mit meinem Registrierungssystem gespielt und ich finde es, wie man seine eigene Datei schreibt und den ganzen TXT in die Datei einfügt.

+0

das war nicht ganz das, was ich suchte, aber es ist hilfreich. Ich habe den besten Weg gefunden, einen Satz zu implementieren is_to_just_use_underscores_as_spaces. – AJaB