我在分配时遇到困难,我收到了一个.txt文件,其中包含以下格式的数据:
Michael Schumacher
Allemagne; 250 91
1994 1995 2000 2001 2002 2003 2004
Benetton; Ferrari;
Fernando Alonso
Espagne; 132 21
etc...
我需要阅读此文件并将数据汇集到适当的变量中:
full name ----> to string
country; numberOfRace numberOfVictories ----> to string; to int, to int
all years separated by spaces ----> to an array
Sponsor1; [Sponsor2(optional)]; ----> to an array
full name2.....
我花了3天的时间尝试使用getlines和file>>的混合物正确分配数据。并且无法设法使阵列正确,这是我最近的尝试:
for (int i = 0; i < NPILOTES; i++) {
getline(fichier, liste.pilotes[i].nom);
getline(fichier, liste.pilotes[i].pays, ';');
fichier >> liste.pilotes[i].nCourses;
fichier >> liste.pilotes[i].nVictoires;
fichier.ignore();
// liste des annees
string line;
getline(fichier, line);
int position = 0, compteur = 0;
while ((position + 4) > line.length()) { // doesn't work, nothing gets in the array
line.substr(position, 4) =
liste.pilotes[i].annees.liste[compteur];
position += 5;
compteur++;
}
liste.pilotes[i].annees.n = compteur;
// liste des constructeurs automobiles
getline(fichier, line);
//????
}
我的班级要求变量名称是法语,但它不应该太难理解(pays = country,annees = years,constructeur = sponsor)。请记住它是第一年的编程课程,因此我不允许使用像对象和向量这样的高级概念......
提前感谢您的意见