このコードは、ファイル内の各クライアントの iterNo を検索し、その情報を表示することになっています。私の問題は、検索する番号に関係なく、ファイルの最初のアイテムが常に表示されることです。どんな助けでも大歓迎です.今本当に絶望的です.あなたの応答に感謝します.
void View()
{
char ans; //answer to store 'y' or 'n'
Intervention inte;
int interNo;
ifstream InfoFile("info.dat", ios::in |ios::binary|ios::app);
if (!InfoFile)
{
cout <<"Error - random files could not be opened.";
}
else
{
while (true)
{
cout << "\nEnter client's interNo number to display ";
cin >> interNo;
inte.getClient();
inte.getAddress();
inte.getTelNo();
inte.getTime();
inte.getDate();
inte.getAnimal();
//InfoFile.seekg(sizeof(Intervention)*(interNo - 1));
InfoFile.read(reinterpret_cast<char *> (&inte), sizeof(Intervention));
//if not eof show data
if (!InfoFile.eof())
{
//Display the processed
// info for the employee
inte.display();
}
cout << "Enter another employee's information to display ? [y / n] ";
fflush(stdin);
ans = ' ';
while (ans != 'y' && ans != 'Y' &&
ans != 'n' && ans != 'N')
{
ans = _getch();
} cout << endl;
if (ans == 'n' || ans == 'N')
{
exit(1);
}
}//end while
}//end else
}//end function view
//**********************************************