`#include <iostream>
#include <fstream>
using namespace std;
// user struct
struct userInfo {
string username;
string firstName;
string lastName;
string favTVshow;
};
// create text file with each person's information
void dataBase(){
ofstream dataFile("db.txt");
dataFile << "8\ngboss\nGriffin\nBoss\nHow I Met Your Mother\nechill\nEdwina\nCarol\nGossip Girl\nestone\nEmma\nStone\nScrubs\njcasablancas\nJulian\nCasablancas\nLost\nrobflew\nRob\nFlewelling\nWorkaholics\ncwoodsum\nCam\nWoodsum\nGlee\nrydogfav\nRyan\nFavero\nHomeland\nfishmans\nSam\nFishman\nEntourage\n";
dataFile.close();
}
// read in database text file to an array
void dataBase_toArray(){
userInfo userArray[8]
string line;
int loop = 0;
ifstream dataFile("db.txt");
if (dataFile.is_open()){
while (getline(dataFile,line))
{
userArray[loop].username = line;
userArray[loop].firstName = line;
userArray[loop].lastName = line;
userArray[loop].favTVshow = line;
cout << userArray[loop].username << endl;
loop++;
}
dataFile.close();
}
else cout << "Can't open file" << endl;
}
// main function
int main() {
userInfo userArray[8];
dataBase();
dataBase_toArray();
}
所以这是我试图在这个文本文件中读入一个结构数组的代码。但是,当我尝试计算每个用户的用户名时,它不起作用。它只是打印出我的文本文件的前 8 行。我该如何解决这个问题,让它将文本输入到结构数组中,然后只输出 8 个用户中每个用户的用户名?
提前致谢!