begin process at 2012 05 30 02:10:45
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Problème avec fseek( )


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

Problème avec fseek( )

mercredi 21 décembre 2005 à 00:51:13 | Problème avec fseek( )

juancho2786

Bonsoir, je suis occupé sur un petit programme ( de débutant ) qui demande a l'utilisateur son nom, prénom et date de naissance. Ensuite il met ses infos dans un fichier .txt
ex: 1.Dupont M...
      2.Dujardin L...
Le probleme c'est que quand je ferme le programme et je le reouvre il recommence a partir de 1 et pas a 3.

J'ai essayé tout ce que j'ai pu mais sans succes pouvez vous me donner un petit coup de pouce.
voici la source :


#include <stdio.h>

char nom[20];
char prenom[20];
char datenaissance[12];
char test;
int max;

main()

{
 
  printf("----------------------- << Carnet d'adresse >> -----------------------  \n");
 
   FILE* LeFichier;
   LeFichier = fopen("adresse.txt","r");
   fseek(LeFichier,0,SEEK_SET);
   fscanf(LeFichier,"%d",&max);
   fclose(LeFichier);
  
   LeFichier= fopen("adresse.txt","a");
   test='o';  
  
 
   while (test!='n')
    {
     
      printf("Il y a déjà %d contacts inscrit\n\n\n",max);     
      fprintf(LeFichier,"\n%d.\n",max+1);
      printf("Nom:");
      fgets(nom, 20, stdin);
      fprintf(LeFichier,"nom: %s",nom);
      printf("Prénom:");
      fgets(prenom, 20, stdin);
      fprintf(LeFichier,"prénom: %s",prenom);
      printf("Date de naissance jj/mm/aa:");
      fgets(datenaissance, 12, stdin);
      fprintf(LeFichier,"Date de naissance: %s\n",datenaissance);
      max++;
      printf("Voulez-vous rajouter une autre personne (o/n) ?");
      scanf("%s",&test); 
      fflush(stdin);
     
    }
  
  
   max++;
   fseek(LeFichier,0,SEEK_SET);
   fprintf(LeFichier,"%s\n",max);
       
   fclose(LeFichier);
  
   return 0;
  
}


Je pense que le probleme vient du fseek().

Merci pour votre aide...

Juancho

mercredi 21 décembre 2005 à 02:53:26 | Re : Problème avec fseek( )

juki_webmaster

Membre Club
Bonjour, SEEK_SET c'est le debut, SEEK_END la fin.
mercredi 21 décembre 2005 à 09:21:11 | Re : Problème avec fseek( )

ymca2003

scanf("%s",&test);
=> test étant un simple caractère ça va planter.
scanf("%c",&test);

Ensuite, quand tu ouvres ton fichier, tu te places au début et tu lis le premier chiffre écrit ( en l'occurrence l'indice du premier contact soit 1).

Pour t'en sortir, tu peux stocker tes paramètres dans une structure, comme cela pour savoir le nombre d'enregistrements, tu divises la taille du fichier par la taille de la structure.
fonctions : ftell, fread, fwrite.


Cette discussion est classée dans : printf, max, lefichier, fseek, fprintf


Répondre à ce message

Sujets en rapport avec ce message

Passage par adresse d'un tableau de structures. [ par alekine ] Bonjour, j'ai un problème pour passer par adresse un tableau de structures. Voilà mon code:#include #define L_MAX 2struct point //la structure d'un p Débutant demande aide en C [ par juancho2786 ] Bonjour tout le monde. Je voulais vous demandez si mon code était correcte? et comment faire pour aller à la ligne après chaque enregistrement? Merci Algorithme PERT [ par Licenseinfo ] Bonjour, je débute en C et j'ai bcp de mal a faire ce programme on a des taches ices taches ont une durée D, D[i]et des relation de préséance i=>jon a Debutant : Boucle et C :) [ par Tkaos ] Bonjour, Voila je suis nouveau ici et dans l'univers de la progz, Bon vais pas vous faire attendre, voici mon probleme : Comme je suis caremment novic combinatoire tres difficile [ par zhao77 ] Bonjour a tous . Voila un probleme que je n'arrive pas a resoudre ( je suis un neophyte ) et pardon pour mon francais je suis etranger . probleme du Problème d'affichage des images sur serveur http codé en c [ par httpcouic ] Bonjour, j'ai un serveur http à coder le problème c'est que je n'arrive pas à afficher des images avec: je ne sais pas si c'est lié aux mimes vers la probleme 8 dames fonction sans prise [ par mehdislim59 ] bonjour je suis nouvo et je debute en programmation et je voudrais savoir comme resoudre mon petit probleme sur les 8 reines je suis mon enoncé qui me 8 reines [ par mehdislim59 ] bonjour je suis nouvo et je debute en programmation et je voudrais savoir comme resoudre mon petit probleme sur les 8 reines je suis mon enoncé qui me écrire un programme qui trie (trie par insertion) par nom et par age un tableau de structure de données (alloué dynamiquement) qui contient l'age et le nom et le prénom et qui enregistre le tri par nom dans un fichier texte et le tri par age (l'utilisateu [ par moncif44 ] #include #include #include #include #define MAX 10 typedef struct { char nom[MAX] ; char prenom[MAX] ; char age[MAX] ; } persone ; void EchangerNo exercice en c [ par mannour85 ] Bonjour, j'ai essayer de corriger cet exercice en c mais j'ai pas eu une bonne exécution j'ai besoin d'aide .voici l'exercice puis mon essai. [b]exerc


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 : 1,763 sec (3)

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