C lecture fichier ligne par ligne
Fermé
letrancheur
Messages postés
210
Date d'inscription
dimanche 14 juillet 2013
Statut
Membre
Dernière intervention
25 août 2020
-
Modifié par letrancheur le 29/12/2014 à 03:45
letrancheur Messages postés 210 Date d'inscription dimanche 14 juillet 2013 Statut Membre Dernière intervention 25 août 2020 - 29 déc. 2014 à 18:38
letrancheur Messages postés 210 Date d'inscription dimanche 14 juillet 2013 Statut Membre Dernière intervention 25 août 2020 - 29 déc. 2014 à 18:38
A voir également:
- C lecture fichier ligne par ligne
- Aller à la ligne excel - Guide
- Partager photos en ligne - Guide
- Vente en ligne particulier - Guide
- Fichier rar - Guide
- Apparaitre hors ligne instagram - Guide
1 réponse
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 844
29 déc. 2014 à 14:10
29 déc. 2014 à 14:10
Bonjour,
tabville[ligne][colonne]=atoi(&carLu);
Ce n'est pas bon ça. atoi() prend une chaîne de caractère De plus, cette fonction est obsolète. Si tu veux convertir carLu en entier, il suffit de faire carLu-'0'.
Pour passer à la ligne suivante, il suffit de lire la ligne jusqu'au '\n'.
Pourquoi ne pas utiliser fgets() pour lire toute la ligne (si tu connais la longueur maximale ?), et tu ne récupères que la partie qui t'intéresse (via strncpy).
Cdlt,
tabville[ligne][colonne]=atoi(&carLu);
Ce n'est pas bon ça. atoi() prend une chaîne de caractère De plus, cette fonction est obsolète. Si tu veux convertir carLu en entier, il suffit de faire carLu-'0'.
Pour passer à la ligne suivante, il suffit de lire la ligne jusqu'au '\n'.
Pourquoi ne pas utiliser fgets() pour lire toute la ligne (si tu connais la longueur maximale ?), et tu ne récupères que la partie qui t'intéresse (via strncpy).
Cdlt,
29 déc. 2014 à 17:39
Car je début :p. Comment me conseille tu alors de faire?
justen un alors?
Pour passer à la ligne suivant j'ai un espace du coup je pensais faire
Et au niveau du fgetc() c'est sous les conseilles de mon prof d'info que j'avais mis cela.
29 déc. 2014 à 18:07
Si tu es sûr que ce sont des chiffres (donc sur 1 position), tu peux faire :
tabville[ligne][colonne]=carLu-'0';
Si c'est un nombre supérieur à 10 que tu veux récupérer, ça ne sera pas la bonne méthode. Mais là, on a besoin de précision sur le codage des informations dans le fichier.
D'où sort ton espace ? Nous avons vraiment de connaître précisément la structure du fichier.
Si par exemple, ton fichier contient 100 caractères sur une ligne et 100 lignes.
Tu peux faire une boucle for et mettre dedans :
Maintenant, d'autres suggestions pour ton programme.
Pourquoi ne pas stocker toute la MAP dans un tableau 100x100 ? Ainsi, tu n'as plus qu'à afficher une partie du tableau à l'écran.
Je te conseille de faire une fonction initialisation() qui se charge de remplir le tableau et une fonction affichage qui s'occupe de l'affichage. Ça sera plus propre et plus facile à maintenir.
Modifié par letrancheur le 29/12/2014 à 19:11
Je vais essayer ton système de buffer.
Et concernant la suggestion n'est pas mal non plus mais je ne sais pas comment je pourrais réaliser cela. :s