Problem beim Öffnen einer Datei



  • Hallo,

    ich verstehe nicht, warum ich bei folgendem Code, die Ausgabe bekomme, dass die Datei nicht geöffnet werden konnte:

    #include <fstream>
    #include <iostream>
    
    using namespace std;
    
    int main()
    {
        fstream datei;
        datei.open("web.html",ios_base::app);
        if(datei.good())
        {
            datei << "Dies ist ein Test";
        }
        else
        {
            cout << "Datei konnte nicht geoeffnet werden!" << endl;
        }
        datei.close();
        return 0;
    }
    

    Ich habe es auch wahlweise mit einer absoluten Pfadangabe probiert, mit demselbem Ergebnis. ("Datei konnte nicht geöffnet werden").
    Der Compiler kompiliert es anstandslos.

    ~IDE: CodeBlocks
    Compiler: GCC~

    Vielen Dank schonmal

    NewProggie



  • datei.open("web.html",ios::out | ios::app);
    

    fstream kann ja nicht wissen ob du es für die Ein- oder Ausgabe benutzen willst ...



  • Freak_Coder schrieb:

    datei.open("web.html",ios::out | ios::app);
    

    fstream kann ja nicht wissen ob du es für die Ein- oder Ausgabe benutzen willst ...

    Das ist falsch - fstream erlaubt lesen und schreiben in die Datei - ich nehme an der Dateipfad stimmt nicht.
    :xmas1:



  • Hi,

    leider falsche Annahme.
    Der Dateipfad stimmt, da sowas hier funktioniert:

    #include<fstream>
    using namespace std;
    
    void main()
    {
       fstream datei("web.html");
       datei << "Dies ist ein Test";
    }
    

    Also selber Pfad, bloss andere Art und Weise



  • Freak_Coder schrieb:

    datei.open("web.html",ios::out | ios::app);
    

    fstream kann ja nicht wissen ob du es für die Ein- oder Ausgabe benutzen willst ...

    Das war's.
    Jetzt funktioniert es.

    Vielen Dank

    :xmas2:



  • gerie schrieb:

    Das ist falsch - fstream erlaubt lesen und schreiben in die Datei

    Und weil fstream beides erlaubt, mußt du ihm sagen, was du benötigst 😉


Anmelden zum Antworten