Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

liste de fichiers dans un rep et les sous rep

8 réponses
Avatar
olivier
bonjour,

Depuis quelques jours je n'arrive pas à trouver le moyen
d'avoir la liste de fichiers dans tout mon repertoire et sous repertoire

Dans un tableau,

Avez vous une idée ?

Olivier

8 réponses

Avatar
Mathieu Francesch
Bonjour,

Je vous invite à créer une procédure qui explore les dossiers
récursivement de la manière suivante :

############################################

Sub ScanFichier(ByVal sDossier As String)
Dim ListeFichiers() As String = Directory.GetFiles(sDossier)
Dim Fichier As String = Nothing

For Each Fichier In ListeFichiers
ListBox1.Items.Add(Fichier)
Next

Dim SousDossiers() As String Directory.GetDirectories(sDossier)
Dim SousDossier As String = Nothing

For Each SousDossier In SousDossiers
ScanFichier(SousDossier)
Next
End Sub

############################################

Vous n'avez plus qu'à modifier cette procédure pour retourner le
résultat dans une collection de votre choix

J'espère que cela répond à vos attentes

Cordialement,

Mathieu Francesch


On Fri, 21 Jul 2006 16:12:24 +0200, "olivier" wrote:

bonjour,

Depuis quelques jours je n'arrive pas à trouver le moyen
d'avoir la liste de fichiers dans tout mon repertoire et sous repertoire

Dans un tableau,

Avez vous une idée ?

Olivier



Avatar
olivier
merci Mathieu,

En fait j'avais crée une telle fonction, je crois que mon probleme en vb.net
est le passage de table en parametre car j'aimerais à la place de
ListBox1.Items.Add(Fichier) avoir aFile(Ubound(afile,1))= Fichier

Mon probleme est a mon avis le passage en parametre de ScanDossier comment
faire ?

Auriez vous une idée ?

Olivier



"Mathieu Francesch" a écrit dans le message de news:

Bonjour,

Je vous invite à créer une procédure qui explore les dossiers
récursivement de la manière suivante :

############################################

Sub ScanFichier(ByVal sDossier As String)
Dim ListeFichiers() As String = Directory.GetFiles(sDossier)
Dim Fichier As String = Nothing

For Each Fichier In ListeFichiers
ListBox1.Items.Add(Fichier)
Next

Dim SousDossiers() As String > Directory.GetDirectories(sDossier)
Dim SousDossier As String = Nothing

For Each SousDossier In SousDossiers
ScanFichier(SousDossier)
Next
End Sub

############################################

Vous n'avez plus qu'à modifier cette procédure pour retourner le
résultat dans une collection de votre choix

J'espère que cela répond à vos attentes

Cordialement,

Mathieu Francesch


On Fri, 21 Jul 2006 16:12:24 +0200, "olivier" wrote:

bonjour,

Depuis quelques jours je n'arrive pas à trouver le moyen
d'avoir la liste de fichiers dans tout mon repertoire et sous repertoire

Dans un tableau,

Avez vous une idée ?

Olivier





Avatar
Mathieu Francesch
Bonsoir Olivier !

Voici une solution qui utilise les tableaux :


#####################################################
Sub ScanFichierV2(ByVal sDossier As String, ByRef sTableau() As
String)
Dim ListeFichiers() As String = Directory.GetFiles(sDossier)
Dim Fichier As String = Nothing

For Each Fichier In ListeFichiers
sTableau(sTableau.Length - 1) = Fichier
ReDim Preserve sTableau(sTableau.GetUpperBound(0) + 1)
Next

Dim SousDossiers() As String Directory.GetDirectories(sDossier)
Dim SousDossier As String = Nothing


For Each SousDossier In SousDossiers
ScanFichierV2(SousDossier, sTableau)
Next
End Sub
######################################################


Exemple d'utilisation de cette procédure

Dim MonTableau(0) As String
Dim Valeur As String = Nothing

ScanFichierV2("c:test", MonTableau)

For Each Valeur In MonTableau
If Valeur <> Nothing Then
ListBox1.Items.Add(Valeur)
End If
Next


Cela répond-il à votre problème ?

Cordialement,

Mathieu Francesch


On Sat, 22 Jul 2006 10:50:04 +0200, "olivier" wrote:

merci Mathieu,

En fait j'avais crée une telle fonction, je crois que mon probleme en vb.net
est le passage de table en parametre car j'aimerais à la place de
ListBox1.Items.Add(Fichier) avoir aFile(Ubound(afile,1))= Fichier

Mon probleme est a mon avis le passage en parametre de ScanDossier comment
faire ?

Auriez vous une idée ?

Olivier



"Mathieu Francesch" a écrit dans le message de news:

Bonjour,

Je vous invite à créer une procédure qui explore les dossiers
récursivement de la manière suivante :

############################################

Sub ScanFichier(ByVal sDossier As String)
Dim ListeFichiers() As String = Directory.GetFiles(sDossier)
Dim Fichier As String = Nothing

For Each Fichier In ListeFichiers
ListBox1.Items.Add(Fichier)
Next

Dim SousDossiers() As String >> Directory.GetDirectories(sDossier)
Dim SousDossier As String = Nothing

For Each SousDossier In SousDossiers
ScanFichier(SousDossier)
Next
End Sub

############################################

Vous n'avez plus qu'à modifier cette procédure pour retourner le
résultat dans une collection de votre choix

J'espère que cela répond à vos attentes

Cordialement,

Mathieu Francesch


On Fri, 21 Jul 2006 16:12:24 +0200, "olivier" wrote:

bonjour,

Depuis quelques jours je n'arrive pas à trouver le moyen
d'avoir la liste de fichiers dans tout mon repertoire et sous repertoire

Dans un tableau,

Avez vous une idée ?

Olivier








Avatar
olivier
Merci Mathieu

Voila en fait j'ai besoin d'un tableau de dimension tab(1,3)

Dans le parcours je veux stocker
tab(1,1) = path + file
tab(1,2) = file

tab(1,3) = date de modification,

Mon probleme est le passage en parametre d'un tableau 2d

Car on ne peut pas faire un redim preserve d'un 2 d.

Vb.net, c'est tres lourd comme programmation,

En visual FoxPro , en 1 ligne de code on resoud ce probleme.

D'avance merci

Olivier



"Mathieu Francesch" a écrit dans le message de news:

Bonsoir Olivier !

Voici une solution qui utilise les tableaux :


#####################################################
Sub ScanFichierV2(ByVal sDossier As String, ByRef sTableau() As
String)
Dim ListeFichiers() As String = Directory.GetFiles(sDossier)
Dim Fichier As String = Nothing

For Each Fichier In ListeFichiers
sTableau(sTableau.Length - 1) = Fichier
ReDim Preserve sTableau(sTableau.GetUpperBound(0) + 1)
Next

Dim SousDossiers() As String > Directory.GetDirectories(sDossier)
Dim SousDossier As String = Nothing


For Each SousDossier In SousDossiers
ScanFichierV2(SousDossier, sTableau)
Next
End Sub
######################################################


Exemple d'utilisation de cette procédure

Dim MonTableau(0) As String
Dim Valeur As String = Nothing

ScanFichierV2("c:test", MonTableau)

For Each Valeur In MonTableau
If Valeur <> Nothing Then
ListBox1.Items.Add(Valeur)
End If
Next


Cela répond-il à votre problème ?

Cordialement,

Mathieu Francesch


On Sat, 22 Jul 2006 10:50:04 +0200, "olivier" wrote:

merci Mathieu,

En fait j'avais crée une telle fonction, je crois que mon probleme en
vb.net
est le passage de table en parametre car j'aimerais à la place de
ListBox1.Items.Add(Fichier) avoir aFile(Ubound(afile,1))= Fichier

Mon probleme est a mon avis le passage en parametre de ScanDossier comment
faire ?

Auriez vous une idée ?

Olivier



"Mathieu Francesch" a écrit dans le message de news:

Bonjour,

Je vous invite à créer une procédure qui explore les dossiers
récursivement de la manière suivante :

############################################

Sub ScanFichier(ByVal sDossier As String)
Dim ListeFichiers() As String = Directory.GetFiles(sDossier)
Dim Fichier As String = Nothing

For Each Fichier In ListeFichiers
ListBox1.Items.Add(Fichier)
Next

Dim SousDossiers() As String >>> Directory.GetDirectories(sDossier)
Dim SousDossier As String = Nothing

For Each SousDossier In SousDossiers
ScanFichier(SousDossier)
Next
End Sub

############################################

Vous n'avez plus qu'à modifier cette procédure pour retourner le
résultat dans une collection de votre choix

J'espère que cela répond à vos attentes

Cordialement,

Mathieu Francesch


On Fri, 21 Jul 2006 16:12:24 +0200, "olivier" wrote:

bonjour,

Depuis quelques jours je n'arrive pas à trouver le moyen
d'avoir la liste de fichiers dans tout mon repertoire et sous repertoire

Dans un tableau,

Avez vous une idée ?

Olivier










Avatar
Chris
si tu es en 2005 tu pe utiliser
For Each MyArt In
My.Computer.FileSystem.GetFiles(S_CHEMINART.Text,FileIO.SearchOption.SearchTopLevelOnly,
"*.txt", "*.doc")
....

Next

a+
Avatar
Millox Frédéric
Salut,

Dans l'exemple de Mathieu, tu remplace le tableau de String par un tableau
de IO.FileInfo.

#####################################################
Sub ScanFichierV2(ByVal sDossier As String, ByRef sTableau() As
IO.FileInfo)
Dim ListeFichiers() As String = Directory.GetFiles(sDossier)
Dim Fichier As String = Nothing

For Each Fichier In ListeFichiers
sTableau(sTableau.Length - 1) = New IO.FileInfo(Fichier)
ReDim Preserve sTableau(sTableau.GetUpperBound(0) + 1)
Next

Dim SousDossiers() As String Directory.GetDirectories(sDossier)
Dim SousDossier As String = Nothing


For Each SousDossier In SousDossiers
ScanFichierV2(SousDossier, sTableau)
Next
End Sub
######################################################


Exemple d'utilisation de cette procédure

Dim MonTableau(0) As IO.FileInfo

ScanFichierV2("c:test", MonTableau)

For Each Valeur As IO.FileInfo In MonTableau
If Not Valeur Is Nothing Then
ListBox1.Items.Add(Valeur)
End If
Next

A+

--
fmillox


"olivier" a écrit :

Merci Mathieu

Voila en fait j'ai besoin d'un tableau de dimension tab(1,3)

Dans le parcours je veux stocker
tab(1,1) = path + file
tab(1,2) = file

tab(1,3) = date de modification,

Mon probleme est le passage en parametre d'un tableau 2d

Car on ne peut pas faire un redim preserve d'un 2 d.

Vb.net, c'est tres lourd comme programmation,

En visual FoxPro , en 1 ligne de code on resoud ce probleme.

D'avance merci

Olivier



"Mathieu Francesch" a écrit dans le message de news:

> Bonsoir Olivier !
>
> Voici une solution qui utilise les tableaux :
>
>
> #####################################################
> Sub ScanFichierV2(ByVal sDossier As String, ByRef sTableau() As
> String)
> Dim ListeFichiers() As String = Directory.GetFiles(sDossier)
> Dim Fichier As String = Nothing
>
> For Each Fichier In ListeFichiers
> sTableau(sTableau.Length - 1) = Fichier
> ReDim Preserve sTableau(sTableau.GetUpperBound(0) + 1)
> Next
>
> Dim SousDossiers() As String > > Directory.GetDirectories(sDossier)
> Dim SousDossier As String = Nothing
>
>
> For Each SousDossier In SousDossiers
> ScanFichierV2(SousDossier, sTableau)
> Next
> End Sub
> ######################################################
>
>
> Exemple d'utilisation de cette procédure
>
> Dim MonTableau(0) As String
> Dim Valeur As String = Nothing
>
> ScanFichierV2("c:test", MonTableau)
>
> For Each Valeur In MonTableau
> If Valeur <> Nothing Then
> ListBox1.Items.Add(Valeur)
> End If
> Next
>
>
> Cela répond-il à votre problème ?
>
> Cordialement,
>
> Mathieu Francesch
>
>
> On Sat, 22 Jul 2006 10:50:04 +0200, "olivier" wrote:
>
>>merci Mathieu,
>>
>>En fait j'avais crée une telle fonction, je crois que mon probleme en
>>vb.net
>>est le passage de table en parametre car j'aimerais à la place de
>>ListBox1.Items.Add(Fichier) avoir aFile(Ubound(afile,1))= Fichier
>>
>>Mon probleme est a mon avis le passage en parametre de ScanDossier comment
>>faire ?
>>
>>Auriez vous une idée ?
>>
>>Olivier
>>
>>
>>
>>"Mathieu Francesch" a écrit dans le message de news:
>>
>>> Bonjour,
>>>
>>> Je vous invite à créer une procédure qui explore les dossiers
>>> récursivement de la manière suivante :
>>>
>>> ############################################
>>>
>>> Sub ScanFichier(ByVal sDossier As String)
>>> Dim ListeFichiers() As String = Directory.GetFiles(sDossier)
>>> Dim Fichier As String = Nothing
>>>
>>> For Each Fichier In ListeFichiers
>>> ListBox1.Items.Add(Fichier)
>>> Next
>>>
>>> Dim SousDossiers() As String > >>> Directory.GetDirectories(sDossier)
>>> Dim SousDossier As String = Nothing
>>>
>>> For Each SousDossier In SousDossiers
>>> ScanFichier(SousDossier)
>>> Next
>>> End Sub
>>>
>>> ############################################
>>>
>>> Vous n'avez plus qu'à modifier cette procédure pour retourner le
>>> résultat dans une collection de votre choix
>>>
>>> J'espère que cela répond à vos attentes
>>>
>>> Cordialement,
>>>
>>> Mathieu Francesch
>>>
>>>
>>> On Fri, 21 Jul 2006 16:12:24 +0200, "olivier" wrote:
>>>
>>>>bonjour,
>>>>
>>>>Depuis quelques jours je n'arrive pas à trouver le moyen
>>>>d'avoir la liste de fichiers dans tout mon repertoire et sous repertoire
>>>>
>>>>Dans un tableau,
>>>>
>>>>Avez vous une idée ?
>>>>
>>>>Olivier
>>>>
>>





Avatar
olivier
MErci c'est une tres bonne idée

Olivier


"Millox Frédéric" a écrit dans le
message de news:
Salut,

Dans l'exemple de Mathieu, tu remplace le tableau de String par un tableau
de IO.FileInfo.

#####################################################
Sub ScanFichierV2(ByVal sDossier As String, ByRef sTableau() As
IO.FileInfo)
Dim ListeFichiers() As String = Directory.GetFiles(sDossier)
Dim Fichier As String = Nothing

For Each Fichier In ListeFichiers
sTableau(sTableau.Length - 1) = New IO.FileInfo(Fichier)
ReDim Preserve sTableau(sTableau.GetUpperBound(0) + 1)
Next

Dim SousDossiers() As String > Directory.GetDirectories(sDossier)
Dim SousDossier As String = Nothing


For Each SousDossier In SousDossiers
ScanFichierV2(SousDossier, sTableau)
Next
End Sub
######################################################


Exemple d'utilisation de cette procédure

Dim MonTableau(0) As IO.FileInfo

ScanFichierV2("c:test", MonTableau)

For Each Valeur As IO.FileInfo In MonTableau
If Not Valeur Is Nothing Then
ListBox1.Items.Add(Valeur)
End If
Next

A+

--
fmillox


"olivier" a écrit :

Merci Mathieu

Voila en fait j'ai besoin d'un tableau de dimension tab(1,3)

Dans le parcours je veux stocker
tab(1,1) = path + file
tab(1,2) = file

tab(1,3) = date de modification,

Mon probleme est le passage en parametre d'un tableau 2d

Car on ne peut pas faire un redim preserve d'un 2 d.

Vb.net, c'est tres lourd comme programmation,

En visual FoxPro , en 1 ligne de code on resoud ce probleme.

D'avance merci

Olivier



"Mathieu Francesch" a écrit dans le message de news:

> Bonsoir Olivier !
>
> Voici une solution qui utilise les tableaux :
>
>
> #####################################################
> Sub ScanFichierV2(ByVal sDossier As String, ByRef sTableau() As
> String)
> Dim ListeFichiers() As String = Directory.GetFiles(sDossier)
> Dim Fichier As String = Nothing
>
> For Each Fichier In ListeFichiers
> sTableau(sTableau.Length - 1) = Fichier
> ReDim Preserve sTableau(sTableau.GetUpperBound(0) + 1)
> Next
>
> Dim SousDossiers() As String >> > Directory.GetDirectories(sDossier)
> Dim SousDossier As String = Nothing
>
>
> For Each SousDossier In SousDossiers
> ScanFichierV2(SousDossier, sTableau)
> Next
> End Sub
> ######################################################
>
>
> Exemple d'utilisation de cette procédure
>
> Dim MonTableau(0) As String
> Dim Valeur As String = Nothing
>
> ScanFichierV2("c:test", MonTableau)
>
> For Each Valeur In MonTableau
> If Valeur <> Nothing Then
> ListBox1.Items.Add(Valeur)
> End If
> Next
>
>
> Cela répond-il à votre problème ?
>
> Cordialement,
>
> Mathieu Francesch
>
>
> On Sat, 22 Jul 2006 10:50:04 +0200, "olivier" wrote:
>
>>merci Mathieu,
>>
>>En fait j'avais crée une telle fonction, je crois que mon probleme en
>>vb.net
>>est le passage de table en parametre car j'aimerais à la place de
>>ListBox1.Items.Add(Fichier) avoir aFile(Ubound(afile,1))= Fichier
>>
>>Mon probleme est a mon avis le passage en parametre de ScanDossier
>>comment
>>faire ?
>>
>>Auriez vous une idée ?
>>
>>Olivier
>>
>>
>>
>>"Mathieu Francesch" a écrit dans le message de news:
>>
>>> Bonjour,
>>>
>>> Je vous invite à créer une procédure qui explore les dossiers
>>> récursivement de la manière suivante :
>>>
>>> ############################################
>>>
>>> Sub ScanFichier(ByVal sDossier As String)
>>> Dim ListeFichiers() As String = Directory.GetFiles(sDossier)
>>> Dim Fichier As String = Nothing
>>>
>>> For Each Fichier In ListeFichiers
>>> ListBox1.Items.Add(Fichier)
>>> Next
>>>
>>> Dim SousDossiers() As String >> >>> Directory.GetDirectories(sDossier)
>>> Dim SousDossier As String = Nothing
>>>
>>> For Each SousDossier In SousDossiers
>>> ScanFichier(SousDossier)
>>> Next
>>> End Sub
>>>
>>> ############################################
>>>
>>> Vous n'avez plus qu'à modifier cette procédure pour retourner le
>>> résultat dans une collection de votre choix
>>>
>>> J'espère que cela répond à vos attentes
>>>
>>> Cordialement,
>>>
>>> Mathieu Francesch
>>>
>>>
>>> On Fri, 21 Jul 2006 16:12:24 +0200, "olivier" wrote:
>>>
>>>>bonjour,
>>>>
>>>>Depuis quelques jours je n'arrive pas à trouver le moyen
>>>>d'avoir la liste de fichiers dans tout mon repertoire et sous
>>>>repertoire
>>>>
>>>>Dans un tableau,
>>>>
>>>>Avez vous une idée ?
>>>>
>>>>Olivier
>>>>
>>







Avatar
olivier
Merci Chris

mais j'utilise encore vs 2003

As tu un site avec la liste des nouveauté entre vs 2005 et 2003 ?

Olivier


"Chris" a écrit dans le message de news:

si tu es en 2005 tu pe utiliser
For Each MyArt In
My.Computer.FileSystem.GetFiles(S_CHEMINART.Text,FileIO.SearchOption.SearchTopLevelOnly,
"*.txt", "*.doc")
....

Next

a+