Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
843 connectés 

 


Dernière réponse
Sujet : Afficher une partie de texte dans un fichier...precision!!!
gilou Bon, ton cas est assez simple.
 
Tu t'alloues un buffer:
char buff[BUFFSIZE]; avec BUFFSIZE assez grand pour contenir chacun de tes champs.
 
Tu boucles en lecture ligne a ligne avec fgets:
fgets(buff, BUFFSIZE, fdesc)
(ou fdesc es ce que tu as en retour de fopen(fichier, "r" );
 
Comme tu separes tes enregistrements par une ligne vide,  
pour compter combien d'enregistrements tu a lus, tu incrementes un compteur chaque fois que tu as (s && !*s).
Et tu fais gaffe au retour de fgets pour t'arreter en fin de fichier.
 
Avec une organisation un peu mieux faite du fichier (coder la taille de chaque enregistrement avant l'enregistrement lui meme, tu peux optimiser un peu la lecture, en sautant chaque enregistrement inutile au lieu de le lire).
A+,

 

[jfdsdjhfuetppo]--Message édité par gilou--[/jfdsdjhfuetppo]


Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
gilou Bon, ton cas est assez simple.
 
Tu t'alloues un buffer:
char buff[BUFFSIZE]; avec BUFFSIZE assez grand pour contenir chacun de tes champs.
 
Tu boucles en lecture ligne a ligne avec fgets:
fgets(buff, BUFFSIZE, fdesc)
(ou fdesc es ce que tu as en retour de fopen(fichier, "r" );
 
Comme tu separes tes enregistrements par une ligne vide,  
pour compter combien d'enregistrements tu a lus, tu incrementes un compteur chaque fois que tu as (s && !*s).
Et tu fais gaffe au retour de fgets pour t'arreter en fin de fichier.
 
Avec une organisation un peu mieux faite du fichier (coder la taille de chaque enregistrement avant l'enregistrement lui meme, tu peux optimiser un peu la lecture, en sautant chaque enregistrement inutile au lieu de le lire).
A+,

 

[jfdsdjhfuetppo]--Message édité par gilou--[/jfdsdjhfuetppo]

vendeeman Mon fichier texte se presente comme ça:
"
Duran
matthieu
0245698547
 
Herault
Bruno
0298563254
 
Zidane
Zinedine
0359874564
"
Voilà, et la je veux afficher par exemple les coordonnée de Bruno: comment je fais? ;)
gilou T'as organise comment ta structure de donnée?
Tes enregistrements ont une taille fixe ou variable?
Il peut y avoir des blancs ou pas dans tes chanps?
A+,
vendeeman Je suis en C, le principe, je le connais :D, le probleme, c'est que ça fait pas longtemps que je fais du C :sweat: alors je connais pas les fonction approprié(fseek, fscanf,fread????????) je sais pas quoi utiliser???  ;)
minooye En quel langage ?
Sinon le principe c'est de lire tel n° de ligne par ton prog.
D'abord tu ouvre le fichier en lecture
Ensuite tu lit telle ligne en fonction de X (variable de la fiche que tu recherche).
 
Dans ton cas j'ai une sol barbare :
1ere : Tu teste si X = 1
 
Si X = 1 :
Nom = Ligne 1
Prenom = Ligne 1
Tel = Ligne 1
 
Sinon
Nom = Ligne (5 + 4(X-2))
Prenom = Ligne (6 + 4(X-2))
Tel = Ligne (7 + 4(X-2))
 
Maintenant reste à savoir en quel langage tu dois prog...
vendeeman ben nan :??:
Je suis en tp et g ça a faire.
COmment vous faite pr afficher le contenu entier d'un fichier texte que vous avez creer au prealable???
minooye Ca sent pas un peu l'&quation du second degré ça ? :)
vendeeman Voilà, je viens de creer un fichier pr y entrer des données(agenda: nom, prenom numero de tel de personne). Avec un  fscanf (ou fseek, je sais pas!) je cherche à afficher le nom de la , par exemple, la 3eme personne de liste:
EX:
Nico  
Bernard
0269854785
 
Girault  
aurelien
0297456985
 
Lefevre  
eurelien
0365897456
 
Voilà, et je cherche à afficher le 3eme numero de tel: comment on fait????HELP!! Est-ce que une fonction comme lseek, fseek ou fscanf peut marcher pour par exemple afficher une certane ligne de mon texte(je lui demande de m'afficher la ligne 12): et pouvez vous me donner un exemple d'utilisation svp ? :D
 
Merci ;)

 

[jfdsdjhfuetppo]--Message édité par Vendeeman--[/jfdsdjhfuetppo]


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR