Сравнить строку с данными в файле - PullRequest
0 голосов
/ 22 октября 2018

Как я могу получить данные от пользователя и сравнить их с данными в файле?

Myfile.txt содержит следующие данные

Louise Ravel
Raven
Wings
Crosses and Bridges
Bjarne

В моей программе

   #include <iostream>
   #include <fstream>
   #include <string>

   int main()
   {
       std::ifstream file("Myfile.txt");
       std::string name;
       std::cout<<"Enter the name to compare with the data: ";
       std::getline(std::cin,name);
       return 0;
   }

Теперь, когда пользователь вводит данные, я хочу сравнить введенную строку с данными, доступными в MyFile.txt, и если найдена совпадающая строка, просто напечатайте "Match Found"

Я попробовал этоодин, но это не сработало.

while(file>>name)
    {
        if(file==name)
        {
            cout<<"Match Found";
        }
    }

Как я могу это сделать?

1 Ответ

0 голосов
/ 22 октября 2018

Ваш цикл while неверен.Вы читаете свои имена из файла в ту же переменную, что и пользовательский ввод.Затем вы также сравниваете файл с прочитанным именем, которое всегда возвращает false.

Try:

std::string nameFromFile;
while(file>>nameFromFile)
{
    if(nameFromFile==name)
    {
        cout<<"Match Found";
    }
}
...