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

  FORUM HardWare.fr
  Programmation

  [C++] comment faire pour lister un dossier ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[C++] comment faire pour lister un dossier ?

n°55010
DJAshh
Posté le 24-08-2001 à 12:45:40  profilanswer
 

je voudrais une instruction qui soit capable de me recenser touts les fichiers et sous-dossiers contenus dans un dossier, afin de les stocker dans un tableau par exemple, ou de les afficher à l'écran, comme si on avait tapé "dir"...
pour l'instant j'ai fait un truc de barbare qui marche certes mais qui est super lent et méga lourd : le pgm génère tous les noms possibles de fichiers et sous-dossiers, essaye d'y accéder, et retourne une valeur ki me dit si ca existe ou pas..... vous avez compris le bourinage par excellence....
MEECI DE M'AIDER.......

mood
Publicité
Posté le 24-08-2001 à 12:45:40  profilanswer
 

n°55017
H4dd3R
Q2
Posté le 24-08-2001 à 13:48:31  profilanswer
 

Oui va voir du côté des fonctions FindFirstFile() FindNextFile() :)


---------------
Athlon64 s754 10*200MHz - R9800Pro - 512MB DDR200MHz - ZX6RR - Q2[SupOp] - Tutorial Video: multilangues, multisstitres
n°55031
electricbl​ue
Pas très inspiré...
Posté le 24-08-2001 à 14:24:02  profilanswer
 

H4dd3R a raison!!! :jap:  
C relatif aux fichiers, donc va voir la doc les concernant.
Je connaissais pas avt (je suis pas du tt 1 pro de la prog win), ms avec l'aide, j'ai fait ça en 5 min:
 
#include <iostream.h>
#include <windows.h>
#include <stdio.h>
#include <dos.h>
 
main() {
 HANDLE fich;
   WIN32_FIND_DATA fichinfo;
   int i=0;
 
 fich = FindFirstFile("*",&fichinfo);
   cout << "\nFichier " << i << " : " << fichinfo.cFileName;
 
   while (true) {
    i++;
    if (!FindNextFile(fich,&fichinfo)) break;
      cout << "\nFichier " << i << " : " << fichinfo.cFileName;
   }
 
   FindClose(fich);
 
 getchar();
}
 
 
Bonne lecture!!!
 
PS: ce prog liste le repertoire courant; si tu veux en lister 1 autre, fo changer de repertoire courant via  une API dont je me souviens plus du nom (surement 1 truc du genre ChangeCurrentDirectory)

 

[edtdd]--Message édité par electricblue--[/edtdd]

n°55081
H4dd3R
Q2
Posté le 24-08-2001 à 16:15:53  profilanswer
 

Non FindFirstFile accepte direct en paramêtre le répertoire voulu si je me souviens bien..
 
Mais va voir la doc c vraiment pas dûr.. :)

n°55126
DJAshh
Posté le 24-08-2001 à 18:11:00  profilanswer
 

Merci beaucoup c vraiment sympa...c vrai ke c simple...
mais par contre pour lister les sous-repertoires je n'ai pas trouvé une fonction comme FindFirstDirectory et FindNextDirectory......

n°55131
H4dd3R
Q2
Posté le 24-08-2001 à 18:35:55  profilanswer
 

Oui c vrai.. Comme j´ai jamais eu besoin de le faire désolé je sais pas.. :)

n°55133
electricbl​ue
Pas très inspiré...
Posté le 24-08-2001 à 18:50:36  profilanswer
 

Pr les sous-rep, ya 1 champ ds la structure WIN32_FIND_DATA qui te dit si c 1 rep ou pas.
Va voir la doc "win32.hlp" pr plus de détail.

n°55341
aqwsezsxdr
Posté le 26-08-2001 à 23:51:09  profilanswer
 

sauf que ca c'est un poil mieux ;)
 
int scan (void)
{
BOOL encore=TRUE;
int ret=0;
 
CFileFind find;
encore=find.FindFile();
 
while (encore)
{  
  encore=find.FindNextFile();
  if (!find.IsDots())
    if (find.IsDirectory())
    {
      _chdir ( LPCTSTR(find.GetFilePath()));
      scan ();
      _chdir (".." );
    }
    else
    {
      cout<<find.GetFilePath()<<endl;
    }
}  
return 0;
}

n°55376
electricbl​ue
Pas très inspiré...
Posté le 27-08-2001 à 09:44:28  profilanswer
 

aqwsezsxdr > surement, j'en sais rien en fait...
Sinon, vu que t'as l'r de t'y connaitre, tu pourrai pas jeter 1 coup d'oeil à mon topic sur les interruption?? Je le up rien que pr toi!!


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

  [C++] comment faire pour lister un dossier ?

 

Sujets relatifs
php: droits lors de la création d'un dossier.PHP: taille de dossier
[ASP] comment lister les fichiers d'un dossier[C++] quelle bibli pou lister le contenu d'un répertoire?
[php] lister les fichiers present dans un dossier[Java] Comment lister le contenu d'un dossier ?
C++ : recuperrer le chemin d'un dossier 
Plus de sujets relatifs à : [C++] comment faire pour lister un dossier ?


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