Lister les repertoires et les fichiers contenu dans c:\ [vs.net][c++]

0/5 (8 avis)

Snippet vu 8 329 fois - Téléchargée 34 fois

Contenu du snippet

Lister Les Répertoires et Fichiers d'un Dossier Sur Un Niveau

Source / Exemple :


#include <windows.h> // pour les 2 apis utilisés FindFirstFile() FindNextFile()
#include <iostream> // cout<< et using namespace std;
using namespace std; // nouvelle norme C++

void main(void) {
	HANDLE hdlfff;

//On va lister tout les programmes et repertoires du disque C:\
//Pour lister juste les .txt par exemple mettre:                c:\\*.txt
//Ou sinon tout les fichier qui ont comme nom Creatix      c:\\Creatix.*

	LPCTSTR dir = "c:\\*.*";
//structure nécéssaire pour FindFirstFile() et FindNextFile()
	WIN32_FIND_DATA IpFindFileData;

//la on initialise la variable hdlfff a la fonction FindFirstFile
hdlfff = FindFirstFile(dir,&IpFindFileData);

//premier fichier qu'il faut afficher avant la fonction FindNextFile qui ne
//comprend pas le 1er fichier

cout<<IpFindFileData.cFileName<<"\n";
//Tant que le prochain fichier n'est pas égale a 0
while (FindNextFile(hdlfff,&IpFindFileData)) {

//j'ecrie le nom du fichier
cout<<IpFindFileData.cFileName<<"\n";
}
//A la fin du programme je ferme le HANDLE
FindClose(hdlfff);
}

//////////////////////////////////////////////////////////////////////////////////////
Le prog sans commentaires:

#include <windows.h>
#include <iostream> 
using namespace std;

void main(void) {
	HANDLE hdlfff;
	LPCTSTR dir = "c:\\*.*";
	WIN32_FIND_DATA IpFindFileData;
hdlfff = FindFirstFile(dir,&IpFindFileData);
cout<<IpFindFileData.cFileName<<"\n";
while (FindNextFile(hdlfff,&IpFindFileData)) {
cout<<IpFindFileData.cFileName<<"\n";
}
FindClose(hdlfff);
}

Conclusion :


Juste pour l'info zzzzzz = Creatix sur zefunchat :)

A voir également

Ajouter un commentaire Commentaires
rajaa09 Messages postés 7 Date d'inscription dimanche 13 décembre 2009 Statut Membre Dernière intervention 2 janvier 2010
15 déc. 2009 à 23:38
bjr à tous!!
j'ai repris le code donné pour LISTER LES REPERTOIRES ET LES FICHIERS CONTENU DANS C:\

au lieu de mettre
[code]LPCTSTR dir = "c:\\*.*";[\code]
j'ai mis
[code]LPCTSTR dir = "c:\\*.bmp"; [\code]

qd je compile le programme,j'obtien l'erreur suivante
: error C2440: 'initialisation' : impossible de convertir de 'const char [9]' en 'LPCTSTR'

et dc je c po koi faire??
qqn pt m'aider???

merci d'avance!!!
cs_kiitos Messages postés 34 Date d'inscription vendredi 10 mars 2006 Statut Membre Dernière intervention 14 septembre 2008
7 sept. 2008 à 22:05
Franchement, chapeau ! Enfin un vrai listeur qui marche ! Ce programme à la fois simple et superbe.
RaphAstronome Messages postés 104 Date d'inscription samedi 7 décembre 2002 Statut Membre Dernière intervention 17 août 2009
24 sept. 2003 à 09:27
Tres interessant ton programme !
NitRic Messages postés 402 Date d'inscription mardi 1 mai 2001 Statut Membre Dernière intervention 15 août 2011
19 sept. 2003 à 12:07
Salut Creatix, tu veux lister tous les fichiers et dossiers d'un lecteur? par date? taille? extension? nom de fichier? ... ? Avoir de la récursivité? Un 'Vrai' code qui liste tous? ;) Et bien voilà 'Mon' code:
http://www.cppfrance.com/article.aspx?Val=2434

Sur ce, je te dit à ce soir sur le chan Creatix ;) bye bye



~(.:: NitRic ::.)~
cs_Kirua Messages postés 3006 Date d'inscription dimanche 14 avril 2002 Statut Membre Dernière intervention 31 décembre 2008
19 sept. 2003 à 07:53
ah ben oui Kaid, moi aussi j'espérais une fonction récursive, moi j'arrive pas à en écrire une moi-même :-( désolé zzzzzz, mais ça c bcp moins intéressant. Pr le titre, comme tu le demandes, j'aurais mis plutôt Lister Les Répertoires et Fichiers d'un Dossier Sur Un Niveau.

bah oui, ça fonctionne pas qu'avec C: ton code !
Afficher les 8 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.