1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
| struct mesure
{
char nom[20];
char reference[15];
double resultat;
void saisie();
void affiche();
void rang();
};
void mesure::saisie()
{
ofstream fichierOut("mesures.txt", ios::app);
cout<<"Donnez le nom de la mesure : ";
cin>>nom;
fichierOut << "nom : " << nom;
cout<<"Donnez la reference : ";
cin>>reference;
fichierOut << ", reference : " << reference;
cout<<"Donnez le resultat de la mesure : ";
cin>>resultat;
fichierOut << ", resultat : " << resultat << "\n";
fichierOut.close();
}
void mesure::affiche()
{
string line;
char recherche[256];
ifstream fichierIn("mesures.txt");
cout << "nom de la mesure recherche : ";
cin >> recherche;
fichierIn.seekg(0,ios::beg);
while(! fichierIn.eof() )
{
getline(fichierIn, line);
if(line.find(recherche)==0)
{
cout<< line << "\n" << endl;
}
}
fichierIn.close();
}
void mesure::rang()
{
string line;
double rang;
ifstream fichierIn("mesures.txt");
cout << "rang de la mesure recherche : ";
cin >> rang;
fichierIn.seekg(sizeof(*nom)+sizeof(*reference)+sizeof(resultat)* rang, ios::beg);
getline(fichierIn, line);
cout << line << "\n" << endl;
fichierIn.close();
} |