Datei öffnen mit ifstream



  • Hallo zusammen.

    ich will dateien in mein Programm einlesen. Nur leider habe ich damit ein Problem. im Falle das die eine Datei nicht gefunden wird soll eine andere verwendet werden. Ich will nicht für jede Datei eine andere Variable verwenden.
    Aber wenn einmal das failbit gesetz wurde bleibt es.

    IniDatei.open(Datei,ios::nocreate);
    if (IniDatei.fail())
    {
        IniDatei.close();
        Datei.SetAt(0,Help.GetCmdLine()[0]);
        IniDatei.open(Datei,ios::nocreate);
        if (IniDatei.fail())
        {
            MessageBox("Fehler. Kann Datei \""+Datei+"\" nicht
                                                      öffnen","ERROR",MB_ICONERROR);
            OnOK();
        }
    }
    

    der code ist nur ein teil.
    Wie kann ich nach dem fehlerhaften öffnen IniDatei zurücksetzen so das ich beim 2. open kein fail mehr bekomme?

    Danke.
    [email]
    lp8and@gmx.de
    [/email]



  • Hallo,

    vielleicht indem du CFile oder CStdioFile der MFC benutzt oder gleich eine "richtige" Ini- Datei bzw. die Registry verwendest?

    Das wäre jedenfalls meine Empfehlung, da du ja sowieso das Framework verwendest.

    Grüße, Volle.



  • Hallo Volle.

    mit CStdioFile habe ich noch nicht gearbeitet. werde es mir aber einmal anschauen.

    Die Registry darf ich durch meinen Auftrageben nicht verwenden.
    Der aufbau meiner Ini entspricht nicht einer "normalen" ini. Steht viel mehr drine.

    Danke

    PS: Wenn ich noch fragen habe melde ich mich wieder.


Anmelden zum Antworten