Programm kann Textdokument nicht öffnen...



  • Ich benütze den Borland C++BuilderX. Dort habe ich dieses Programm geschrieben.(Frage weiter unten)

    /* Quiz-Programm
    */
    #include <iostream>
    #include <fstream>
    #include <string>
    #include <cstdlib>
    #include <ctime>
    using namespace std;

    int main()
    {

    ifstream dat_ein;
    string dateiname;
    dateiname = (" daten.txt ");

    dat_ein.open(dateiname.c_str(), ios_base::in);

    if(!dat_ein)
    {
    cout << " ...::: !!Fehler!! :::... Datei konnte nicht geoeffnet werden !!!";
    cout << endl;

    cin.get();
    return -1;
    }

    int anzahl;
    int datensatz;
    string land, stadt;
    int loop;
    string antwort;

    dat_ein >> anzahl;

    srand( (unsigned)time( NULL ) );
    datensatz = rand() % anzahl +1;

    loop = 2 * datensatz;
    while(loop >= 2)

    {
    dat_ein >> land >> stadt;
    loop -= 2;
    }

    cout << "Wie heisst die Hauptstadt von/der "
    << land << "?" << endl;
    cin >> antwort;

    if (antwort == stadt)
    {
    cout << endl << " ...:::RICHTIG!:::..." << endl;
    }

    else
    {
    cout << endl << "Falsch" << endl;
    cout << "Die richtige Antwort ist: " << stadt
    << endl;
    }

    dat_ein.close();

    return 0;

    }

    Das Textdokument heißt daten.txt und sieht so aus:

    9
    Angola Luanda
    Kolumbien Bogota
    USA Washington
    Schweiz Bern
    Schweden Stockholm
    Senegal Dakar
    Niederlande Amsterdam
    Deutschland Berlin
    Japan Tokio

    Dieses Programm soll einfach Fragen stellen, und die Antworten, dann auswerten. Beim Außführen kommt aber immer der Fehlertext, so wie ich ihn eingestellt habe, wenn das öffnen des Textdokumentes nicht funktioniert also: ..::: !!Fehler!! :::... Datei konnte nicht geoeffnet werden !!!. Das Textdokument ist aber im gleichen Ordner. (Als Programm verwende ich den C++BuilderX von Borland)

    Danke schon mal jetzt.



  • Blind geraten, aber ich würde sagen, die Leerzeichen im Dateinamen sind zu viel 😉



  • Habe es geändert, der fehler kommt aber immer noch 😞 .

    Aber danke. War auch ein Fehler den ich übersehen hatte. Finde aber nicht den anderen.



  • Dann bist du womöglich im falschen Verzeichnis. Relative Pfadangaben beziehen sich immer auf das aktuelle Arbeitsverzeichnis (und das ist nicht unbedingt das, wo die EXE liegt).



  • Also wenn ich mich nicht ganz irre, benutzt du easy-C++ von Dirk Louis(?! kann auch jemand anderes sein) vom M&T-Verlag?
    Auf der Begleit-CD befinden sich alle Beispiele, schau dort am besten mal nach. 🙄



  • Danke, das war das Problem.

    😃


Anmelden zum Antworten