Filtré un listage de fichier [Résolu]

Messages postés
39
Date d'inscription
dimanche 11 octobre 2009
Statut
Membre
Dernière intervention
9 mai 2015
- - Dernière réponse : NHenry
Messages postés
14456
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
24 mai 2019
- 25 nov. 2011 à 13:22
Bonjour,

Je souhaiterai listé des fichiers dans un dossier. Mais des fichiers avec un certaine extension (.jpg).
J'ai commencé mais je but :
    'exemple
Dim dos_pho As String = "c:" 
    Dim fso, folder, files, NewFile, sourceFolder

    On Error Resume Next
        fso = CreateObject("Scripting.FileSystemObject")

        If dos_pho = "" Then
    'c'est vite fait
        Else

            folder = fso.GetFolder(dos_pho)
            files = folder.Files

            For Each folderIdx In files
                If Left(folderIdx.name, ".jpg", 4) Then
                    TextBox2.Text += folderIdx.name & vbCrLf
                Else
                End If
            Next

        End If


Le résultat me donne tous la liste de tous les fichiers dans le dossier mais je ne souhaite avoir que les ".jpg" .

Merci d'avance
Afficher la suite 

Votre réponse

8 réponses

Meilleure réponse
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
207
3
Merci
Bonjour,
Le résultat me donne tous la liste de tous les fichiers dans le dossier


voilà qui m'étonnerait énormément !
1)Left veut dire à gauche (pas à droite)..
donc :
je te laisse traduire cette expression conditionnelle
If Left(folderIdx.name, ".jpg", 4) Then

2)
TextBox2.Text += folderIdx.name & vbCrLf

ferait que seul un fichier (en admettant que certains COMMENCENT () par ".jpg") figurerait dans ta textbox.
Alors commence par dire le résultat vraiment atteint et non :
Le résultat me donne tous la liste de tous les fichiers dans le dossier mais je ne souhaite avoir que les ".jpg" .

que tu ne peux avoir aztteint ainsi !
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 159 internautes nous ont dit merci ce mois-ci

Commenter la réponse de ucfoutu
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
207
0
Merci
Ah ! soius VB.Net, c'est vrai ==>> ignore alors mon point 2)
Le premier reste énormément valable !


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
Commenter la réponse de ucfoutu
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
207
0
Merci
Et en outre :
Tu ne sais apparemment pas quelle est la syntaxe de la fonction Left (de surcroît non réellement conseillée sous VB.Net et qui n'y est présente que pour des question d'héritage de VB6)
Tu développes sous quoi ?


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
Commenter la réponse de ucfoutu
Messages postés
14456
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
24 mai 2019
130
0
Merci
Bonjour,

Quel est ton langage de dev ?
Car ton code ressemble plus à VB6 qu'à .NET.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS et aussi ce lien[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
Commenter la réponse de NHenry
Messages postés
728
Date d'inscription
samedi 4 avril 2009
Statut
Membre
Dernière intervention
30 mars 2014
2
0
Merci
Bonjou lunnorey,



Dim chemin = Environment.CurrentDirectory ' ou le chmin du fichier
Dim files = System.IO.Directory.GetFiles(chemin, "*.txt") ' l'extension
ListBox1.DataSource = files ' envoie dans listbox1


Cordialement, Joe.
Commenter la réponse de ehjoe
Messages postés
39
Date d'inscription
dimanche 11 octobre 2009
Statut
Membre
Dernière intervention
9 mai 2015
2
0
Merci
Merci pour vos réponse,
Je programme avec vb10, c'est pas facile car le vb6 est plus répandu et est différent.
Juste encore un petit point.
Je voudrai maitre dans un tableau son nom et son adresse . donc:
Dim tab_pho(folderIdx.Name, folderIdx.path)


et je voudrait ensuite l'afficher sur un listview mais je n'y arrive pas.
merci d'avance.
Commenter la réponse de lunnorey
Messages postés
728
Date d'inscription
samedi 4 avril 2009
Statut
Membre
Dernière intervention
30 mars 2014
2
0
Merci
NHenry,

C'est pas du vb6 !


Dim dos_pho As String= "c:"

Text Box 2.Text + =


Cordialement, Joe.
Commenter la réponse de ehjoe
Messages postés
14456
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
24 mai 2019
130
0
Merci
Bonjour,

D'accord, merci EhJoe, je n'avais pas vu ce détail.

Evites d'utiliser les COM quand tu es en .NET, il y a souvent moyen de s'en passer.

Regardes le commentaire de EhJoe du 25 novembre 2011 à 09:42:54
Et ensuite, regardes MSDN.

Quand tu développes en .NET, évites les sources VB6, elles te tromperont souvent sur le bon codage.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, ce lien ou encore celui-ci[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
Commenter la réponse de NHenry