Почему мой код не читает мои входные значения? - PullRequest
0 голосов
/ 09 июля 2020

Я кодирую на C ++ и пытаюсь использовать ifstream. Это код:

int main()
{
    inFile.open("UserInfo.txt");
    if (!inFile) {
        cout << "Error Opening File" << endl;
    }
    
    inFile >> init_check;
    if (init_check == "Y") {
        cout << "User Info found, press 1 if you would like to ignore the save data, otherwise save data will be loaded." << endl;
        cin >> useUserInfo;
        if (useUserInfo == "1") {
            initializer();
        }
        else {
            loadUserInfo();
        }
    }

    else {
        initializer();
    }
    
    
}

А это функция loadUserInfo:

void loadUserInfo(){
    string none, goal;
    string FirstName, LastName, name;
    int age, height;
    char none1;
    float weight;
  
    inFile >> FirstName;
    getline(inFile, FirstName, ' ');
    getline(inFile, LastName);
    inFile >> age;
    inFile >> height;
    inFile >> weight;
    inFile >> goal;
    inFile.close();
    UserInfo main_user;
    main_user.SetUser(FirstName, LastName, height, weight, age, goal);
    
}

Файл, из которого он читает, в полном порядке и имеет значения. Однако inFile не считывает значения, а вместо этого считывает "" при отладке. В чем проблема?

...