mit ofstream in Datei schreiben und jeder Eintrag in neue Zeile



  • Habe folgenden Code:

    char benutzername[20], vorname[20];
        int i;
        cin>> benutzername ;
        ofstream datenbank("test.txt",ios::app);
        for(i=0;i<=40; i++)
        {
          ofstream datenbank("test.txt",ios::app);
          datenbank << benutzername[i];
        }
        cin>> vorname ;
        ofstream datenbank("test.txt",ios::app);
        for(i=0;i<=40; i++)
        {
          ofstream datenbank("test.txt",ios::app);
          datenbank << vorname[i];
        }
    

    In der Datei (test.txt) Steht in der ersten Zeile Benutzerdatenbank. Möchte jetzt dass wie man oben sieht ein Benutzername und ein Vorname in die Datei eingetragen werden. Diese sollen aber untereinander stehen. Nicht hintereinander.
    Mit dem Befehl

    datenbank <<endl;
    

    funktioniert es nicht, da schreibt er mir immer so seltsame Dinge in die Datei.
    Beispiel

    Benuterdatenbank
    Hasi
    Hans

    mfg



  • Warum öffnest du gleich viermal die Datei? Das erste ofstream Datenbank... sollte reichen.
    Um in eine neue Zeile zu kommen, hänge einfach ein "\n" an die Datei an, also

    datenbank << benutzername[i] << "\n";
    


  • Wo ist der Bezug zum C++Builder?
    ofstream usw. ist reiner Standard, und dafür haben wir hier ein extra C++-Forum.


Anmelden zum Antworten