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

  FORUM HardWare.fr
  Programmation
  C++

  [c++]fonction de recherche

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[c++]fonction de recherche

n°151797
Ti_Thom
ca va t'y marcher ??
Posté le 05-06-2002 à 15:23:41  profilanswer
 

je cherche une fonction listant les != fichiers d'une extension précise dans un repertoire.
Un peu a la maniere de "dir *.exe" sous dos ou "ln *.exe" sous linux.


---------------
Je dors pas, j'm'économise ...
mood
Publicité
Posté le 05-06-2002 à 15:23:41  profilanswer
 

n°151818
smaragdus
whores, drugs & J.S. Bach
Posté le 05-06-2002 à 15:35:06  profilanswer
 

http://forum.hardware.fr/recherche.gif

n°152245
ugte
Posté le 06-06-2002 à 00:21:52  profilanswer
 

euh... system("ls *.cpp" ) ?? :)

n°152344
Ti_Thom
ca va t'y marcher ??
Posté le 06-06-2002 à 10:15:09  profilanswer
 

bah ca j'y avait pensé, mais il faudrait que ca me renvoi les noms des elements trouvés, pasque ca me sert a rien de les afficher, c pour un prog en vc++.

n°152423
prettysmil​e
Sourire est un devoir social
Posté le 06-06-2002 à 11:03:17  profilanswer
 

system("ls *.cpp>pipo.pipo" );
puis parcours de pipo.pipo et récupération des noms de fichiers, sans oublier d'effacer pipo.pipo à la fin du programme (pour parcours du fichier fais une recherche)

n°152432
eristoff
Posté le 06-06-2002 à 11:07:20  profilanswer
 

tu crees un pipe et tu lis la sortie de ls par l'entrée standard de ton programme

n°153068
Ti_Thom
ca va t'y marcher ??
Posté le 06-06-2002 à 20:48:08  profilanswer
 

c possible sous unix/linux, mais sous windows ?


---------------
Je dors pas, j'm'économise ...
n°153084
eristoff
Posté le 06-06-2002 à 21:25:37  profilanswer
 

ca existe aussi mais je ne sais pas si les fonctions sont les mêmes (pipe,open,dup,close)

n°153158
chrisbk
-
Posté le 06-06-2002 à 23:33:04  profilanswer
 

plus proprement : findfirstfile, findnextfile

n°156299
weblook$
happy face
Posté le 11-06-2002 à 00:16:07  profilanswer
 

Et hop!
recherche n'importe quel type de fichier(s ), cette fonction stock dans une liste (qui est une ListBox en MFC) les noms des fichiers.
Pour avoir un truc en C pur il suffit de changer les CString en char*,les Format par des strcpy,les +=/+ par des strcat et compagnie et d'ajouter le tout dans un char** ou une liste chaînée ou.... au choix

Code :
  1. void Cherche(const char *Catalogue, const char *FichierCherche)
  2. {
  3. CString s=Catalogue,str;
  4. char chemin[100];
  5. long hFile;
  6. struct _finddata_t c_file;
  7. CString point=".." , dpoint=".";
  8. /*----------------------recherche du fichier chercher----------------------*/
  9. _chdir(Catalogue);
  10. _getcwd(chemin,100);
  11. m_list.AddString(chemin);
  12. hFile=_findfirst(FichierCherche,&c_file);
  13. if(hFile!=-1)
  14. {
  15.  if(c_file.name!=point && c_file.name!=dpoint)
  16.  {
  17.   str.Format("    %s",c_file.name);
  18.   m_list.AddString(str);
  19.  }
  20. }
  21. while(_findnext(hFile,&c_file)==0)
  22. {
  23.  if(c_file.name!=point && c_file.name!=dpoint)
  24.  {
  25.   str.Format("    %s",c_file.name);
  26.   m_list.AddString(str);
  27.  }
  28. }
  29. _findclose(hFile);
  30. /*-------------------------reherche de repertoire--------------------------*/
  31. hFile=_findfirst("*.*",&c_file);
  32. while(_findnext(hFile,&c_file)==0)
  33. {
  34.  if(c_file.name!=point && c_file.name!=dpoint)
  35.  {
  36.   if(c_file.attrib==0x10)
  37.   {
  38.    s+="\\";
  39.    s+=c_file.name;
  40.    Cherche(s,FichierCherche); /*recherche dans le nouveau reprtoire*/
  41.    _chdir(Catalogue);
  42.    s=Catalogue;
  43.   }
  44.  }
  45. }
  46. _findclose(hFile);


 
la recursivité résoud comme toujours des problèmes apparemment difficile...
 
 
exemple d'appel: void Cherche( "C:\\" , "*.cpp" )


Message édité par weblook$ le 06-11-2002 à 00:22:34

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  [c++]fonction de recherche

 

Sujets relatifs
Comment renvoyer une chaine dans une fonction ?[windev] recherche de docs...
Cookies et php: je débute et la fonction de recherche est morte :DRecherche une fonction en VBSCRIPT (j'ai la source en VB)...
pl/sql fonction recherche caractere?[PHP] Crée une fonction de recherche sur une base MySQL
[php] pouvez vous tester (la fonction recherche de) mon forum ???[]Access VBa]Recherche une fonction de base
recherche un fonction pour enregistrer les bitmaprecherche une fonction GD
Plus de sujets relatifs à : [c++]fonction de recherche


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