fichier -> tableau - C++ - Programmation
Marsh Posté le 13-07-2010 à 11:56:42
Ce n'est pas une question naze. C'est une question fréquente. En anglais cela s'appelle faire du "parsing", et en français du "découpage, "saucissonnage", ou "filtrage".
Il existe plusieurs méthodes pour parser un fichier. Celle que je préfère consiste à :
- faire une boucle sur tous les caractères d'une ligne,
- bufferiser les caractères jusqu'à un ou plusieurs délimiteurs (dans l'exemple, ce serait jusqu'à une fin de ligne, un espace, ou un deux point), pour obtenir des mots
- voir si le mot est un mot clé ("champ1" )
- bufferiser la suite jusqu'à un ou plusieurs délimiteurs (dans l'exemple, ce serait jusqu'à une fin de ligne, un espace).
Cela demande une petite trentaines de lignes de code. C'est de la programmation classique.
On peut aussi utiliser les expressions régulières, ou d'autres choses, qui permettent de faire cela en moins de lignes de code.
Marsh Posté le 13-07-2010 à 18:54:35
boost::spirit, y a un lecteur de fichier tabulé dnas les exemples (ou sur le blog je sais plus)
Marsh Posté le 15-07-2010 à 12:40:53
le code de ton problème : http://forum.hardware.fr/hfr/Progr [...] m#t1767615
utilise la recherche avt de posté !
Marsh Posté le 13-07-2010 à 10:44:37
Salut à tous,
je sais que c'est une question naze et que je pourrais trouver, mais je suis en galère de temps et j'espère que l'un de vous sera clément.
J'ai un fichier texte formaté comme suit
ma question est smple, comment je m'y prends pour récupérer champ1, etc et tous les entiers qui suivent.
Merci beaucoup