begin process at 2012 05 27 13:35:49
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Chaîne de caractères

 > [ANSI C][REPONSE FORUM 372070] - RECHERCHE D'UNE CHAÎNE DE CARACTÈRE DANS UN FICHIER TEXTE COMPOSÉ DE CHAMPS (VIA LISTE CHAÎNÉE).

[ANSI C][REPONSE FORUM 372070] - RECHERCHE D'UNE CHAÎNE DE CARACTÈRE DANS UN FICHIER TEXTE COMPOSÉ DE CHAMPS (VIA LISTE CHAÎNÉE).


 Information sur la source

Note :
Aucune note
Catégorie :Chaîne de caractères Niveau :Débutant Date de création :17/01/2005 Date de mise à jour :17/01/2005 14:39:42 Vu / téléchargé :5 928 / 734

Auteur : meech

Ecrire un message privé
Site perso
Commentaire sur cette source (7)
Ajouter un commentaire et/ou une note

 Description

Ce code est déposé en réponse à une question d'un forum.
http://www.cppfrance.com/forum.v2.aspx?ID= 372070&nb=1

Dans un fichier de type CSV (c'est-à-dire, chaque ligne étant composé de plusieurs champs), le but est de rechercher une chaîne de caractères dans le premier champ.

Le concept global :
- lecture du fichier ligne par ligne ;
- découpage de chaque ligne en fonction d'un séparateur (ici, un espace) ;
- stockage des informations de la ligne dans une liste chaînée de structures d'informations.
- fermeture du fichier.
- exemple de recherche de chaîne de caractère.

La limite de ce code tient à l'espace de mémoire disponible, puisque le fichier lu est stocké sous forme de liste chaînée.


 Conclusion

Pour répondre précisément à la question du forum, l'exemple pris correspond exactement à la question.
Bien évidemment, la structure contenant les informations est aisément modifiable au cas où...

Compilable à peu près partout.

Merci de me notifier les probables bugs et erreurs, ou toute autre question.

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
  • truc.cTélécharger ce fichier [Réservé aux membres club]Voir ce fichier3 558 octets
  • truc.devTélécharger ce fichier [Réservé aux membres club]972 octets
  • truc.exeTélécharger ce fichier [Réservé aux membres club]23 462 octets
  • truc.hTélécharger ce fichier [Réservé aux membres club]Voir ce fichier2 931 octets
  • truc.txtTélécharger ce fichier [Réservé aux membres club]Voir ce fichier45 octets

Télécharger le zip


 Historique

17 janvier 2005 14:39:43 :
2005.01.17 - correction de fautes d'orthographe (...)

 Sources du même auteur

Source avec Zip [WINDOWS API - C][CODE::BLOCKS] PROCESS_ARGS - LECTURE DES P...
Source avec Zip [GCC][ANSI C|WIN32API] CODE PORTABLE D'APPEL DYNAMIQUE DE FO...
Source avec Zip [GCC][WIN32][DEV-C++] AFFICHER LES ACL (PERMISSIONS) D'UN FI...
Source avec Zip [GCC][WIN32][DEV-C++] COMMANDE LDD SOUS WIN32/PE - VERSION 0...
Source avec Zip [GCC] ANSI C - LISTE CHAINEES - LISTE DE CHAINES DE CARACTER...

 Sources de la même categorie

CALCUL DE CLEF RIB par Renfield
Source avec Zip [C] WD_STRING V2.2 par cyberripper
Source avec Zip LES STRING EN C, AFFECTATION, CONCATÉNATION, SPLIT, ... par appranting
Source avec Zip [C] WD_STRING V1.9 par cyberripper
Source avec Zip LIBRAIRIE LANGUAGES par astro53

Commentaires et avis

Commentaire de Arnotic le 17/01/2005 14:53:45 administrateur CS

Salut,

strtok() si tu peux éviter se serai nettement mieux.

Commentaire de meech le 17/01/2005 15:27:26

Ce n'est pas bien ??? question de portabilité ?

Commentaire de BruNews le 17/01/2005 16:07:40 administrateur CS

strtok est portable je pense, pas la le prob.
Je pense aussi que ce n'est pas une bonne habitude car bosse avec une variable implicite unique et il y a risque de corruption sur des appels simultanes (multi thread par exemple). On obtient la meme chose sans risque avec strstr().

Commentaire de Arnotic le 17/01/2005 16:12:58 administrateur CS

oui je confirme ce n'est pas pour une question de portabilité mais bien pour la raison qu'a exprimer BruNews dans son commentaire.

Commentaire de meech le 17/01/2005 18:26:07

Merci de l'information, les gars... Je pense à corriger cela. Je ne savais pas du tout...

Commentaire de Hylvenir le 19/01/2005 22:15:22

Salut,
sinon strtok_r  pour le réentrant
et strsep pour être à la mode BSD ;-)

Commentaire de Hylvenir le 19/01/2005 22:20:38

ah... tiens, on ne peut pas éditer un de ces messages. ça serait cool ça.

Sinon, à priori ça fuit aussi dans split, y''a un strdup qui ne semble pas être free.

 Ajouter un commentaire




Nos sponsors


Sondage...

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 : 0,952 sec (4)

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