[C] lire dans un fichier texte

Résolu/Fermé
Fabien - 10 août 2007 à 08:13
mype Messages postés 2435 Date d'inscription jeudi 1 novembre 2007 Statut Membre Dernière intervention 16 août 2010 - 22 nov. 2007 à 22:08
Bonjour a tous!

J'ai cree un programme qui collecte des tonnes de donnees d'une experience de physique et qui les ecrit dans des fichiers sous forme de colonnes separees par des "tab", par exemple:

...
0.534(tab)0.5468(tab)...
0.248(tab)0.4687(tab)...
...

Comment faire pour acceder a la "case" correspondant a la x-ieme ligne et a la y-ieme colonne pour y extraire la string s'y trouvant? J'aimerais bouger le curseur de x fois "return" et de y fois "tab", y lire les 6 caracteres puis les mettre dans une "string".

Je suppose qu'il faut faire un file=fopen(filename,"r");
mais apres je ne sais plus quoi faire... fseek, fscanf, fread?

Merci de votre aide,
Fabien
A voir également:

3 réponses

Salut Fabien!

Pour faire cela je te conseille d'utiliser fgets, cette fonction lit une ligne complète
tu devras donc faire un truc du style :

char result[LINE_SIZE];

int i;
FILE* file =NULL;
file=fopen(filename,"r");

for (i=0; i<=NbLine; i++ ) {
fgets(result,LINE_SIZE, file);
}


Après ca tu devrais avoir ta NbLine ième ligne dans ton buffer!!
1
Cher Pod,

Merci beaucoup pour ta réponse rapide hier! J'ai utilisé fgets comme tu me l'as conseillé et avec beaucoup de patience et un sscanf j'ai finalement réussi à extraire les valeurs que je veux de la base de donnée.

Tout de bon,
Fabien
0
Bonjour,
je veux lire un fichier texte ligne par ligne
je veux lire une une ligne compléte et la mettre dans une chaine. les lignes n'ont pas une longueur égale
Merci
0
mype Messages postés 2435 Date d'inscription jeudi 1 novembre 2007 Statut Membre Dernière intervention 16 août 2010 436
22 nov. 2007 à 22:08
va voir ici
0