Elenco File in directory

venerdì 21 settembre 2007 - 11.49

device78 Profilo | Junior Member

forse è una stupidata, ma mi sto un pò piantando sulla risoluzione di un piccolo problema

vorrei realizzare una sezione di un programma dove do la possibilità all'utente di scegliere una directory e automaticamente viene creato un file di testo che contiene tutti i percorsi dei file contenuti in questa directory.
Del tipo scelgo cartel1 e nel file ottengo all'interno del mio file:

c:\cartel1\file.txt
c:\cartel1\file2.txt
c:\cartel1\cartel2\file3.txt
c:\cartel1\cartel2\file4.txt
....

adesso non ho problemi nello scrivere nel file di testo, ma non riesco ad implementare un loop che mi aiuta a scorrere tutti i file presenti in un directory iniziale.

Chi mi da una mano?

grazie...

alextyx Profilo | Expert

Con questo codice, riempio una textbox multiline con tutti i nomi dei file della directory "c:\windows":

Me.TextBox1.Clear()
Dim di As New IO.DirectoryInfo("c:\Windows")
For Each fi As IO.FileInfo In di.GetFiles
Me.TextBox1.Text &= fi.Name & vbCrLf
Next

device78 Profilo | Junior Member

ok grazie.....
però forse sbaglio qualcosa io, ma cosi non mi elenca i file contenuti nelle cartelle contenute nella directory di inizio ma solo i file diciamo figli.Uso questa funzione:

Private Sub contafile(ByVal s As String)

Dim di As New IO.DirectoryInfo(s)
Dim fi As FileInfo
For Each fi In di.GetFiles
LBFile.Items.Add(fi.Name)
Application.DoEvents()
Next


End Sub

device78 Profilo | Junior Member

ok fatto io....grazie alla tua idea....
Mi sembra che vada devo testarla bene però-

ecco la procedura RICORSIVA:

Private Sub contafile(ByVal s As String)

Dim di As New IO.DirectoryInfo(s)
Dim fi As FileInfo
For Each fi In di.GetFiles
LBFile.Items.Add(fi.Name)
Application.DoEvents()
Next

Dim dir As DirectoryInfo
For Each dir In di.GetDirectories
contafile(dir.FullName & "\")
Next

End Sub



GRAZIE!!!

alextyx Profilo | Expert

Non avevo capito che ti serviva anche esplorare le sottocartelle!
Comunque, se ci sei già riuscito da solo, complimenti e buon lavoro!
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5