begin process at 2012 05 30 03:34:12
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Divers

 > 

Débutant(e)

 > 

lire une variable dans un fichier


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

lire une variable dans un fichier

vendredi 1 mai 2009 à 09:54:32 | lire une variable dans un fichier

momoko94

Bonjour,

voila le problème, je voudrais rechercher dans un fichier le nombre d'etudinats d'une ville et l'afficher.

typedef struct
{
    char nom_ville[30];
    int population;
    int nb_etudiant;
}ville;

printf(" vous etes ici pour lire  les informations sur une ville\n");
        printf("entrer le nom d'une ville \n");
        gets(villemain.nom_ville);

        pt=fopen("D:\\ProjetC\\proj.txt","r");
            if(pt==NULL)
            {
                printf("ouverture impossible");

                exit(0);
            }

            while(erreur=fread(&villemain,sizeof(ville),1,pt)!=(feof(pt)))
            {
                if(erreur==0)
                {
                    return 0;
                    fclose(pt);

                }


                    if(villemain.nom_ville)
                    {
                        printf("la ville est dans le fichier\n\n");
                        printf("population ou nombre d'etudiants\n");
                        gets(choix_info);
                        if(strcmp(choix_info,"nombre d'etudiants")==0)
                        {
                            while(fgets(ligne,sizeof(ligne),pt)!=NULL)
                            {
                                printf("%s",ligne);
                            }
                            while(erreur=fread(&villemain,sizeof(ville),1,pt)!=(feof(pt)))
                            {
                                if(erreur==0)
                                {
                                    return 0;
                                    fclose(pt);

                                }
                                printf("%d",villemain.nb_etudiant);
                                fclose(pt);
                            }

avec mon fichier texte


NOM DE LA VILLE: paris
POPULATION : 2500000
NOMBRE D'ETUDIANTS : 25000


NOM DE LA VILLE: marseille
NOMBRE D'ETUDIANTS : 15000
 
le programme m'affiche:
0000
NOMBRE D'ETUDIANTS : 25000


NOM DE LA VILLE: marseille
NOMBRE D'ETUDIANTS : 15000
808792608

vendredi 1 mai 2009 à 10:52:36 | Re : lire une variable dans un fichier

TychoBrahe

Salut,

Pour commencer, je te colle ici un extrait du man de gets() :
       «Never use gets().  Because it is impossible to tell without knowing the
       data in advance how many  characters  gets()  will  read,  and  because
       gets() will continue to store characters past the end of the buffer, it
       is extremely dangerous to use.  It has  been  used  to  break  computer
       security.  Use fgets() instead.
»
A ce niveau là tu sais ce qu'il te reste a faire

Ensuite, je vois que tu effectue régulièrement ceci :
   {
      return 0;
      fclose(pt);
   }
Ton fclose() ne sera jamais effectué vu que le return te fait sortir de la fonction courrante.


Sinon, si tu veux tester la présence du nom de la ville dans une ligne, tu peux utiliser la fonction strstr() et regarder elle retourne NULL (cas où la chaine n'est pas trouvée) ou autre chose (un pointeur vers la première ocurence de la chaine recherchée). Dans tous les cas fait attention a la casse, 'a' != 'A'.
samedi 2 mai 2009 à 12:08:05 | Re : lire une variable dans un fichier

momoko94

pour faire strstr il me faut 2 variables or je n'ai que le villemain.nomville, il faut que j'arrive a lire le fichier pour recuper les villes du fichier avec une variable ou alors je me debrouille avec fseek


Cette discussion est classée dans : fichier, printf, pt, ville, etudiants


Répondre à ce message

Sujets en rapport avec ce message

Petit probleme de code en C sur Linux !! [ par UncleShu ] Je voudrais créer un fichier dans le réperoire personnel d'un utilisateur mais mon code ne marche pas !!#include #include #include #define DIR $HOM Debutant : ecrire et lire un fichier txt [ par manu ] Bonjour a tous.Je debute, aussi desole.... :)Je cherche donc a ecrire dans un fichier txt, puis a lire ce fichier ligne a ligne, faire un split / expl [C] lecture d'un fichier [ par GazGaz ] lu allalors voila en fait je lis un fichier en c et le probleme c'est que ce fichier est composé de lignes dont la taille exècede largement les 80 car Analyse fichier log a faire en C [ par Nexouille ] A l'aideeeeeeeeeeeeeeeeeeeeeeeeee***************************************Les serveurs web enregistrent la trace des visites dans des fichiers de log. C [debutant]attribution dun mot a une char et comparaison ... [ par DarkEbola ] en fait, jaurais aimé attribuer du texte a une charkke chose comme 500 ou 600 caracteres maximais jarrive pas a lui attribuer plus de 1 Charsuis-je pl Affichage d'une image BMP en C [ par sabres ] Voici le code source d'un début de programme écrit sous Turbo C/C++ permettant d'afficher les caractéristiques d'une image BMP et de l'afficher. Le pr probleme en langage C - URGENT!!!!! [ par mazo0012 ] bonjourjai un gros pb en C, si quelq'un pouvait m'aider apidement je commence a devenir dingue!!!!!!jexplike:tout simplement, j'essaye de saisir le ch Petit Bug [ par LordBob ] Bonjour a tous,voici deux fonctions:#include #include // Variableschar SourceFile[1024];char DestinationFile[1024];<b CRYPTAGE !!! [ par megaman ] Voilà j'essai de faire un log de cryptage à l'aide de fonctions et procédure.Les fonctions et procédures :Une fonction qui retourne le nom de fichieru Aide fichier :) [ par asnow ] Salut a tous :)Voila mon tit code pour ouvrir un fichiervoid Ouverture () {char nomf[20]; printf("Entrez le nom du fichier :"); scanf("%s", nomf


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,385 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales