Fichier DEVc++

Fermé
lg.aniss Messages postés 3 Date d'inscription vendredi 1 mai 2009 Statut Membre Dernière intervention 9 mai 2009 - 1 mai 2009 à 22:48
 kas - 1 mai 2009 à 23:44
Bonjour,
je veux savoir comment manipuler un fichier lectur ,ecretur, recherche ,suppression aussi comment arté a la fin du fichier bon ce que je chercher exactement c avoir un programme avec le menu en bas

lectur_________________1
modification___________2
supprestion____________3
recherche_____________4
affichage______________5
fin___________________6

aussi encor je veux bien savoir comment effectue une recherche sur le fichier , est qd je trouve le resulta si je veux la modifier comment fair sa modifier juste le donner du code rechercher ééé c tt pr le moment merci davnce

#include <iostream.h>
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <ctype.h>
FILE *f;
struct
{
int code;
char nom[30];
char prenom[30];
int nbh;
float slh;
}pr;

int menu()
{ int x;
cout <<"\n __________________________________\n";
cout <<" | lectur________________"<<1 <<" |"<< endl;
cout <<" | modification__________"<<2 <<" |"<< endl;
cout <<" | supprestion___________"<<3 <<" |"<< endl;
cout <<" | recherche_____________"<<4 <<" |"<< endl;
cout <<" | affichage_____________"<<5 <<" |"<< endl;
cout <<" | fin___________________"<<6 <<" |"<< endl;
cout <<" |__________________________________|" << endl;
cout << "\t\n choisie un chiffre de menu :\n ";
cin >> x;

while(x<1 || x>6)
{
cout <<"\t\n choix invalide retourner au menu "<<endl;
cout <<"\n __________________________________\n";
cout <<" | lectur________________"<<1 <<" |"<< endl;
cout <<" | modification__________"<<2 <<" |"<< endl;
cout <<" | supprestion___________"<<3 <<" |"<< endl;
cout <<" | recherche_____________"<<4 <<" |"<< endl;
cout <<" | affichage_____________"<<5 <<" |"<< endl;
cout <<" | fin___________________"<<6 <<" |"<< endl;
cout <<" |__________________________________|" << endl;
cout << "\t\n choisie un chiffre de menu :\n ";
cin >> x;
}
}
int fin()
{ int a;
cout << "fin du programme taper 5 pour quitter :";
cin >>a;
return (a);
}

void init()
{ f=fopen("personnel.txt","a+");

cout <<" taper votre code :";
cin >> pr.code;
fprintf(f,"\n\tcode\t\t%d\n",pr.code);

cout <<" taper votre nom :" ;
cin >>pr.nom;
fprintf(f,"\tnom\t\t%s\n",pr.nom);

cout << " taper votre prenom :";
cin >>pr.prenom;
fprintf(f,"\tprenom\t\t%s\n",pr.prenom);

cout << " taper votre nombre d'heur :";
cin >> pr.nbh;
fprintf(f,"\tnombre heur\t%d\n",pr.nbh);

cout << " taper votre salaire :";
cin >> pr.slh;
fprintf(f,"\tsalair heur\t%0.2f\n",pr.slh);

fclose(f);
};

void lectur()
{
f=fopen("personnel.txt","r+");
while (f !=0)
{
fscanf(f,"\tcode :%d \n " ,pr.code);
printf ("\tcode :%d \n" ,pr.code);

fscanf(f," \tnom :%s \n" ,pr.nom);
printf (" \tnom :%s \n" ,pr.nom);

fscanf(f,"\tprenom :%s\n" ,pr.prenom);
printf ("\tprenom :%s\n" ,pr.prenom);

fscanf(f,"\tnombre dheur :%d\n" ,pr.nbh);
printf ("\tnombre dheur :%d\n" ,pr.nbh);

fscanf(f,"\tsalair par heur :%0.2f\n" ,pr.slh);
printf( "\tsalair par heur :%0.2f\n\n" ,pr.slh);
fin();
}
fclose(f);
}

main()
{
/*menu();
init();
lectur();
fin();*/
switch choix
{ case 1 : menu(); break;
case 2 :
case 3 :
case 4 :
case 5 :
case 6 :fin();break;
}
A voir également:

2 réponses

en c++
il faut utiiser la bibitheque <fstream>
0
#include <fstream>
#include <iostream>
#include <string>
using namespace std;
struct
{
int code;
string nom;
string prenom;
int nbh;
float slh;
}pr;
int menu()
{ int x;
cout <<"\n __________________________________\n";
cout <<" | lecture________________"<<1 <<" |"<< endl;
cout <<" | modification__________"<<2 <<" |"<< endl;
cout <<" | suppression___________"<<3 <<" |"<< endl;
cout <<" | recherche_____________"<<4 <<" |"<< endl;
cout <<" | affichage_____________"<<5 <<" |"<< endl;
cout <<" | fin___________________"<<6 <<" |"<< endl;
cout <<" |__________________________________|" << endl;
cout << "\t\n choisie un chiffre de menu :\n ";
cin >> x;

while(x<1 || x>6)
{
cout <<"\t\n choix invalide retourner au menu "<<endl;
cout <<"\n __________________________________\n";
cout <<" | lecture________________"<<1 <<" |"<< endl;
cout <<" | modification__________"<<2 <<" |"<< endl;
cout <<" | supprestion___________"<<3 <<" |"<< endl;
cout <<" | recherche_____________"<<4 <<" |"<< endl;
cout <<" | affichage_____________"<<5 <<" |"<< endl;
cout <<" | fin___________________"<<6 <<" |"<< endl;
cout <<" |__________________________________|" << endl;
cout << "\t\n choisie un chiffre de menu :\n ";
cin >> x;
}
}
int fin()
{ int a;
cout << "fin du programme taper 5 pour quitter :";
cin >>a;
return (a);
}
void init()
{ ofstream f("personnel.txt",ios::app );//ouverture du fichier en ajut
if(f==0){cout<<"impossibe d'ouvrir e fichier"<<endl;
exit(1);}
cout <<" taper votre code :";
cin >> pr.code;
f<<pr.code<<" \n";
cout <<" taper votre nom :" ;
cin >>pr.nom;
f<<pr.nom<<"\n ";


cout << " taper votre prenom :";
cin >>pr.prenom;
f<<pr.prenom<<"\n ";


cout << " taper votre nombre d'heur :";
cin >> pr.nbh;
f<<pr.nbh<<"\n ";
cout << " taper votre salaire :";
cin >> pr.slh;
f<<pr.slh<<"\n ";
fclose(f);
};
void lecture()
{
ifstream f("personne.txt");
while (f.eof()!=1)
{
getline(f,pr.code);
cout<<pr.code;

getline(f,pr.nom);
cout<<pr.nom;

getline(f,pr.prenom);
cout<<pr.prenom;

getline(f,pr.nbh);
cout<<pr.nbh;

getline(f,pr.slh);
cout<<pr.slh;
fin();
}
f.close();
}
int main()
{
menu();
init();
lecture();
fin();
return 0;
};
//si tu veux utiliser un switch dans le main il faut mettre la fonction menu et réecrire le code
//essaie ce code les fichiers textes sont correctes
0