Endung anhängen bei "ofstream"

lolkopf

Grünschnabel
Hallo miteinander,

ich habe ein Problem mit meinem Code. DevC++ gibt keine Fehlermeldung aus, sobald das programm diesen Punkt erreicht, beendet es sich mit der üblichen "diesesundjenes hat einen Fehler verursacht"-Meldung.

Ich habe Textarray namens "name", das ich mit der Endung .txt im Namen abspeichern will.

Mit diesem Syntax wird das Programm einfach beendet:
ofstream datei(name+'.txt', ios::out)

Ich habe auch schon versucht, ein zweites Array zu deklarieren, das "name" und die Endung beeinhaltet, was aber nicht funktioniert hat. Ich habe zunächst mit einer For-Schleife die beiden Arrays abgeglichen und anschließend versucht die Endung anzuhängen. Diese blieb jedoch außen vor.

Vielen Dank.
 
Ein wenig mehr Quellcode und vorallem die Fehlermeldung des Kompilers wären sehr hilfreich!
 
Der Konstruktor von "ofstream" erwartetet einen Dateinamen, um überhaupt erst mal eine Datei anzulegen. Ein Array kannst du hier nicht übergeben. Um die Daten des Textarrays zu speichern benötigst du weiteren Code, z.B.
C++:
std::ofstream file("dateiname.txt");

if( file.is_open() )
{
    file << name[0]; // Beispiel: Schreibt hier den ersten String des Arrays in die Datei
                     // Muss entsprechend der Elementanzahl des Arrays mehrfach aufgrufen werden (Schleife)
        file.close();
}

Strings werden übrigens immer in doppelte Ausführungszeichen eingeschlossen. Einfache Ausführungszeichen werden für einzelne Zeichen verwendet.

Gruß
MCoder
 
Zurück