C ++ Создание функции для чтения в файл .txt и проверки, чтобы убедиться, что файл существует, но мой цикл не работает - PullRequest
0 голосов
/ 02 декабря 2018

Я пытаюсь создать функцию для чтения в файле, проверьте, существует ли она (и не запрашивает ли она имя файла снова), а затем выведите «Загрузка ...», если она найдетфайл.

Однако цикл проходит только один раз.Он печатает "ОШИБКА ФАЙЛА: Файл не существует!"а затем завершает программу.Есть идеи?Скажите, если вам нужна дополнительная информация!

void find_board(string fileName)
{
bool filefound = 0;
ifstream in_stream;

do
{
    cout << "Enter the name of the file containing the board: ";
    cin >> fileName;

    in_stream.open(fileName.c_str());

    if (in_stream.fail())
    {
        filefound = 0;
        cout << "FILE ERROR: File does not exist!" << endl;
        exit (EXIT_FAILURE);
    }
    else
    {
        filefound = 1;
    }
} while (filefound == 0);

cout << endl << "Loading..." << endl;

return;
}

Ответы [ 2 ]

0 голосов
/ 02 декабря 2018

Проблема, которую я здесь вижу, заключается в строке:

exit (EXIT_FAILURE);

Если вы хотите выполнить цикл после несуществующего имени файла - вам нужно удалить эту строку!

0 голосов
/ 02 декабря 2018

для чего exit (EXIT_FAILURE);? 1002 *

...