C ++ Использовать ли операторы с fstream? - PullRequest
0 голосов
/ 16 марта 2020

Я задавал этот вопрос раньше, но я хочу знать, почему я не могу получить ответ, который ищу, когда запускаю этот код:

void fourCoats() 
{
    string word;

    ifstream horseList;
    horseList.open("horseList.txt");
    if (!horseList.is_open())
    {
        cout << "Unable to open file...";
        exit(1);
    }
    else {
        while (horseList >> word)
        {

            if (word == "Male8D") {
                horseList >> word;
                if (word == "Female7B") {
                    cout << "You have Male8D and Female7B, Breed them!\n";
                }
            }
            else if (word == "Female8D") {
                horseList >> word;
                if (word == "Male7B") {
                    cout << "You have Female8D and Male8D, Breed them!\n";
                }
            }
            else if (word == "Male8D") {

            }
            else if (word == "Female8D") {

            }
            else if (word == "Male8D") {
                cout << "Some other stuff here, you have so and so";
            }
            else if (word == "Female8D") {
               cout << "some other stuff here";
            }
            else if (word == "Male8D") {
               cout << "some stuff here";
            }
            else if (word == "Female8D") {
                horseList >> word;
                if (word == "Male7E") {
                    cout << "You have Female8D and Male7E, Breed them!\n";
                }
            }

        }
    }

    horseList.close();


}

По сути, я хочу выполнить поиск файл, использующий fstream и использующий «операторы if» или, если есть лучший способ сделать это, найдите комбинацию строк из текстового файла. Если эта комбинация найдена, я хочу вывести сообщение, как показано в первой паре операторов if, проблема в том, что я не могу заставить что-либо работать должным образом, у меня будут слова, которые я ищу в текстовом файле но тогда ничего не выдаст при обнаружении. Возможно, он не находит их в файле правильно? Текст вводится построчно, поэтому я ищу разные строки, а не только одну строку.

Пожалуйста, помогите мне или помогите мне в том, что я делаю неправильно, я не могу кажется, обернуть мою голову вокруг этого. Я перепробовал так много вещей! Спасибо!

...