Directory.GetFiles() [Résolu]

Signaler
Messages postés
1447
Date d'inscription
jeudi 2 novembre 2000
Statut
Membre
Dernière intervention
23 septembre 2007
-
Messages postés
1447
Date d'inscription
jeudi 2 novembre 2000
Statut
Membre
Dernière intervention
23 septembre 2007
-
Bonjour je développe en VB.Net 2005.

J'ai un problème, j'ai créer une classe de recherche et pour rechercher les fichiers à partir d'un "pattern"
je me casse pas la tête et j'utilise cette fonction : IO.Directory.GetFiles("DirectoryPath","pattern") mais ca ne marche pas ! Pourquoi je sais pas je remplace DirectoryPath par le répertoire de mes documents et pattern par un bout de nom de fichier qui existe dans Mes Documents et cela ne renvoi aucune valeur et le tableau reste vide !

Comment y remédier ?

Redman

9 réponses

Messages postés
3172
Date d'inscription
dimanche 15 février 2004
Statut
Membre
Dernière intervention
9 avril 2017
30
Bon, O0neHacker, jmf, te demmande ton code exacte parsque tu fait justement l'erreur dans le Pattern.

Reprend la page d'aide (
http://msdn2.microsoft.com/en-us/library/wz42302f.aspx
) à la section Remarques.
* represente 0 ou plusieurs caractéres.
donc pour chercher tout les fichiers contenant un 'a', il faut mettre *a*







__________
Kenji

(


Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
25
Je dois dire que cela ne marche pas à cause d'une erreur quelque part dans ton code.
Au fait ! Quel code ?
Messages postés
1447
Date d'inscription
jeudi 2 novembre 2000
Statut
Membre
Dernière intervention
23 septembre 2007
1
Il n'y aucune erreur dans mon code et la fonction existe belle est bien, si tu regardes le MSDN(local en tout cas) bah je l'ai bien utilisé. Je me demande si ca vient pas de la framework qui bug ou autre. En tout cas j'ai suivi le MSDN.

Redman
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
25
O0neHacker, s'il te plait :
Montre ton code, tel qu'il est !
Tu ne peux dire "ça ne marche pas" alors que j'ai tout fait pour que celà marche, sans que l'on voie ce que tu as fait en fait... non ?
Messages postés
1447
Date d'inscription
jeudi 2 novembre 2000
Statut
Membre
Dernière intervention
23 septembre 2007
1
Je t'ai déjà passé le code ! c'est le seul code que j'utilise pour avoir un tableau de string qui représente les path des fichiers et je t'ai dit que j'ai mis le repertoire de mes documents.

Si tu veux essaye avec environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) pour remplacer et utilise comme pattern la lettre a. Si tu sais pas coder c'est pas mon problème mais j'ia tout passé !!!

Redman
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
25
Tiens, va...

Voilà comment ça marche, donc ...(exemple ici avec le chemin server.Tapath)





























Dim

di As System.IO.DirectoryInfo = New System.IO.DirectoryInfo _
(Server.MapPath("."))
ForEach fi As System.IO.FileInfo In di.GetFiles
Response.Write(fi.FullName)
Next
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
25
(copier/coller raté) : on recommence donc

Dim di As System.IO.DirectoryInfo = New System.IO.DirectoryInfo(Server.MaPath("."))




For
Each fi As System.IO.FileInfo In di.GetFiles
  Response.Write(fi.FullName)
next
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
25
Décidément (copier/coller mauvais)
Dim di As System.IO.DirectoryInfo = New System.IO.DirectoryInfo(Server.MapPath("."))
For Each fi As System.IO.FileInfo In di.GetFiles
  Response.Write (fi.FullName)
Next
Messages postés
1447
Date d'inscription
jeudi 2 novembre 2000
Statut
Membre
Dernière intervention
23 septembre 2007
1
Je pense que Charles RACAUD à bien répondu alors que jmf tu complique avec ton Server.MapPath(".") ensuite pas besoin d'élargir la largeur de la page !
Merci Charles

C'est drôle car ma MSDN locale est différente de la MSDN distante.

Redman