Text Editor für DOS



  • Guten Tag !

    Kann mir hier jemand eine Automatische Speicherfunktion einbauen die sobald man den Editor schließt eine Datei namens ,,Dokument.txt" erzeugt , natürlich mit den geschriebenen Text !

    Hier der bisherige Code :

    #include <iostream.h>

    float Zero(float);
    int main()

    {
    float Zero;

    cout << "Zum beenden ENTER druecken\n";
    cin >>Zero;
    return 0;
    }



  • Wo liegt denn ganz genau dein Problem? Schau vielleicht mal in die C++-FAQ Dateien + Ströme heisst es da.

    -junix



  • #include <iostream>
    #include <string>
    #include <fstream>
    
    using namespace std;
    
    int main()
    {
        string str;
        char ch;
    
        cout << "Bitte Text eingeben(mit ESC + Enter abbrechen): " << endl;
        cout << "*********************************************** \n" << endl;
    
        while ( cin.get(ch))
        {
            if (ch == 27) 
                break;
            str = str + ch;
        }
        cout << "\n\n";
        cout << "*********************************************** \n";
        cout << "Eingabe beendet..." << endl;
    
        ofstream datei("Dokument.txt");
        if (!datei)
        {
            cout << "Erstellen der Datei ist fehlgeschlagen!" << endl;
        }
        else
        {
            cout << "Datei erstellt..." << endl;
            datei << str << "\n";
            cout << "String geschrieben..." << endl;
            datei.close();
            cout << "Datei geschlossen..." << endl;
        }
        system("Pause"); //Lass dir doch hier was besseres einfallen! :D 
        return 0;
    }
    


  • Der funzt irgendwie nich richtig :
    1)Die Datei wird nicht erstellt
    2)Der beendet sich nicht wenn mann die angegebene kombination drückt sondern es kommen jede menge / 😕



  • was fuern' compiler u. OS ?



  • Compiler : DJGPP 2,0 Beta
    OS : Windows XP (also für die DOS-Box) , oder DOS 5,0



  • hi

    der djgpp hat eine andere escapeabfrage..

    du baust es entweder um zu einem anderen abbruch, oder du musst vorher die 224 abfangen.. esc ist im djgpp eine doppelte zahl: 224/27
    leider ist dieses beispiel noch leich unausgereift, aber es geht zumindest im djgpp:

    #include <iostream>
    #include <string>
    #include <fstream>
    #include <conio.h>
    using namespace std;
    
    int main()
    {
        string str;
        char ch;
    
        cout << "Bitte Text eingeben(mit ESC abbrechen): " << endl;
        cout << "*********************************************** \n" << endl;
    
        while ( true)
        {
            ch=getche(); //holt ein zeichen
    
            if(ch==224 )
                ch=getch();
    
                if (ch == 27)
                    break;
    
            str = str + ch;
        }
        cout << "\n\n";
        cout << "*********************************************** \n";
        cout << "Eingabe beendet..." << endl;
    
        ofstream datei("Dokument.txt", ios::out);
        if (!datei)
        {
            cout << "Erstellen der Datei ist fehlgeschlagen!" << endl;
        }
        else
        {
            cout << "Datei erstellt..." << endl;
            datei << str << "\n";
            cout << "String geschrieben..." << endl;
            datei.close();
            cout << "Datei geschlossen..." << endl;
        }
        return 0;
    }
    


  • gut, konnt ich nicht wissen, hab kein XP

    warum hält sich djgpp nicht an den ASCII - Code ?? 😕



  • ne ne ne.. microsoft hält sich mal wieder an nix .. *g*
    Einlesen von Pfeiltasten, F-Tasten und Tastenkombinationen

    aus der faq, da hat es side nochmal zusammengefasst vor längerem.

    ansonsten prüfe einfach beides ab und damit ist das programm portierbar 😉

    der djgpp ist der beste compiler der welt.



  • ...dass der DJGPP unter XP überhaupt noch läuft, ist mir jetzt neu.



  • ...ich hatte ihn im winter auf xp zu laufen, hat geklappt
    http://clio.rice.edu/djgpp/win2k/main.htm

    habe aber nicht sonderlich viel damit gemacht, nur installiert und hello world.



  • Guten Tag !

    Ich bedanke mich sehr das ihr mir alle geholfen habt Der Text editor Funzt nähmlich 🙂


Anmelden zum Antworten