Проверка имени пользователя и пароля в последовательности из текстового файла в C ++ - PullRequest
0 голосов
/ 19 февраля 2019

Я не использовал fstream с, поэтому я немного растерялся.Я создал текстовый файл со списком случайных слов, которые я хотел использовать в качестве списка имен пользователей и паролей для моей программы.

Я хочу, чтобы моя программа проверяла, существует ли пользователь (первая строка в строке), затем проверьте, совпадает ли второе слово после него.

Пока у меня есть это:

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

using namespace std;

int main()
{
    ifstream inFile;
    inFile.open("userData.txt");

    // Check for error
    if (inFile.fail()) {
        cerr << "error opening file" << endl;
        exit(1);
    }

    string user, pass;
    int Count = 0;

    // Read file till you reach the end and check for matchs
    while (!inFile.eof()) {
        inFile >> user >> pass;
        if (user == "Banana", "Apple") {
            Count++;
        }
        cout << Count << " users found!" << endl;
    }
}

Мой текстовый файл содержит:

Banana Apple /n
Carrot Strawberry /n
Chocolate Cake /n
Cheese Pie /n

Iполучить мой код сейчас нехорошо, но я действительно не знаю, что делаю.

1 Ответ

0 голосов
/ 19 февраля 2019

Читайте ниже:

while (!inFile.eof()) {
    inFile >> user >> pass;
    if (user == "Banana", "Apple") {
        Count++; // No point in doing so because this only happens once
    }
    cout << Count << " users found!" << endl;
}

Используйте while (inFile >> user >> pass){ вместо while (!inFile.eof()){. Почему?

Попробуйте вместо этого:

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

using namespace std;

int main()
{
    ifstream inFile;
    inFile.open("userData.txt");

    // Check for error
    if (inFile.fail()) {
        cerr << "error opening file" << endl;
        exit(1);
    }

    string user, pass;
    int Count = 0;

    // Read file till you reach the end and check for matchs
    while (inFile >> user >> pass) {
        if (user == "Banana" && pass == "Apple") {
            cout <<"user found!" << endl;
        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...