Listage d'un repertoire [Résolu]

Signaler
Messages postés
22
Date d'inscription
lundi 12 février 2007
Statut
Membre
Dernière intervention
15 juillet 2008
-
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
-
Bonjour a tous,

Je voudrai un code pour recupere la liste dans un un fichier texte, des repertoires contenue dans un repertoir donné ?

Quelqu'un a une idee ?

Merci a vous

Bas j'essaye d'apprendre pis c'est pas facile  

6 réponses

Messages postés
22
Date d'inscription
lundi 12 février 2007
Statut
Membre
Dernière intervention
15 juillet 2008

C'est bon j'ai trouver la solution la voici :

#
My.Computer.FileSystem.DeleteFile(RepReseau & "Data\Combo\ListFour.ncc")
    For Each CibleDirectory As String In My.Computer.FileSystem.GetDirectories(RepFour, FileIO.SearchOption.SearchTopLevelOnly)
    ListageDirectory = My.Computer.FileSystem.GetName(CibleDirectory)
    FileWriter = My.Computer.FileSystem.OpenTextFileWriter(RepReseau & "Data\Combo\ListFour.ncc", True) 'TRUE: Ajoute, FALSE: Remplace
    FileWriter.WriteLine(ListageDirectory)
    FileWriter.Close()
Next
#

Merci quand meme

Bas j'essaye d'apprendre pis c'est pas facile  
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
69
en .Net, on est d'accord (theme bien choisit) ?
Messages postés
22
Date d'inscription
lundi 12 février 2007
Statut
Membre
Dernière intervention
15 juillet 2008

Oui oui en .NET me suis pas tromper cette fois

Bas j'essaye d'apprendre pis c'est pas facile  
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
69
http://www.vbfrance.com/codes/SAUVEGARDE-LOCALE_46041.aspx

on y trouve :
For Each TFfic As FileInfo In My.Computer.FileSystem.GetDirectoryInfo("C:\...").GetFiles
...
Next
Messages postés
22
Date d'inscription
lundi 12 février 2007
Statut
Membre
Dernière intervention
15 juillet 2008

J'ai trouver un code qui repond partiellement a mon attente, a savoir celui-ci:

#
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim FileWriter As System.IO.StreamWriter
        My.Computer.FileSystem.DeleteFile("c:\ListEssai.txt")
        For Each foundDirectory As String In My.Computer.FileSystem.GetDirectories("c:", FileIO.SearchOption.SearchTopLevelOnly)
            FileWriter = My.Computer.FileSystem.OpenTextFileWriter("c:\ListEssai.txt", True) 'TRUE: Ajoute, FALSE: Remplace
            FileWriter.WriteLine(foundDirectory)
            FileWriter.Close()
        Next
        Me.Close()
End Sub
#

Le probleme qu'il me reste avec ce code c'est que dans le fichier creer on voit le chemin d'acces ( exemple "c:\WINDOWS") alors que mois je ne voudrais voir que "WINDOWS' sans le "c:"

Bas j'essaye d'apprendre pis c'est pas facile  
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
69
quelques remarques....

My.Computer.FileSystem.DeleteFile(RepReseau & "Data\Combo\ListFour.ncc")

tu supprime le fichier sans t'assurer qu'il existe.
vu que ton but n'est pas de le supprimer, mais bien d'ecrire ta log dans un fichier vierge, tu aurais pu faire :


FileWriter = My.Computer.FileSystem.OpenTextFileWriter(RepReseau & "Data\Combo\ListFour.ncc", False) 'TRUE: Ajoute, FALSE: Remplace
For Each ...
...
FileWriter.WriteLine(ListageDirectory)
Next
FileWriter.Close()


perso, je ferais :


Dim FileWriter As StreamWriter = New StreamWriter(RepReseau & "Data\Combo\ListFour.ncc", False)
For Each oDir As DirectoryInfo In New DirectoryInfo(RepFour).GetDirectories
FileWriter.WriteLine(oDir.Name)
Next
FileWriter.Close()