Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Come leggere tutti i file/directory contenuti dentro una directory?

2,593 views
Skip to first unread message

RobertoA

unread,
Dec 6, 2009, 6:33:42 AM12/6/09
to
Data una certa directory, devo preparare una lista di tutti i file contenuti
in essa e di tutte le sottodirectory
Stessa cosa per le sottodirectory
Per ogni file/directory devo raccogliere il nome, path completo, data ultima
modifica, data creazione, size, permessi
Sapete consigliarmi un po' di pappa pronta per risolvere il problemino
(lettura ricorsiva, data ultima modifica, permessi) ?
Ciao e grazie
RobertoA


thomas.az

unread,
Dec 6, 2009, 9:19:10 AM12/6/09
to

"RobertoA" <amor...@tiscalinet.it> ha scritto nel messaggio
news:4b1b...@newsgate.x-privat.org...

Il seguente esempio elenca in una casella di riepilogo tutti i file formato
testo esistenti nella cartella c:\BustaPaga\Documenti\FileDma (eliminando
l'If verranno letti tutti)

Private Sub Comando3_Click()
Dim MyPath As String
Dim MyName As String
Me!Elenco.RowSource = ""
MyPath = "c:\BustaPaga\Documenti\FileDma\"
MyName = Dir(MyPath)
Do While MyName <> ""

If Right(MyName, 4) = ".txt" Then
Me!Elenco.RowSource = Me!Elenco.RowSource & MyName & ";"
End If
MyName = Dir

Loop
Me!Elenco.RowSource = Left(Me!Elenco.RowSource, Len(Me!Elenco.RowSource) -
1)

End Sub

Saluti
Thomas.az

RobertoA

unread,
Dec 6, 2009, 9:54:11 AM12/6/09
to

Bello, grazie
Ma manca la ricorsivita' della verifica dentro le sottodirectory
Quella mi interessava in realta'
Ciao e grazie
RobertoA

Sergio MAZZA

unread,
Dec 7, 2009, 1:42:36 AM12/7/09
to
"RobertoA" <amor...@tiscalinet.it> ha scritto nel messaggio
news:4b1b...@newsgate.x-privat.org...

Se ti avvicini al desco (www.sitocomune.com) trovi la pappa:
Sezione General - 6.31 Creare una tabella contenente i nomi dei files
presenti in una directory.


Ciao.
--
Sergio MAZZA

RobertoA

unread,
Dec 7, 2009, 3:15:50 AM12/7/09
to
>> Data una certa directory, devo preparare una lista di tutti i file
>> contenuti in essa e di tutte le sottodirectory
>> Stessa cosa per le sottodirectory
>> Per ogni file/directory devo raccogliere il nome, path completo, data
>> ultima modifica, data creazione, size, permessi
>> Sapete consigliarmi un po' di pappa pronta per risolvere il problemino
>> (lettura ricorsiva, data ultima modifica, permessi) ?
>> Ciao e grazie
>> RobertoA
>
> Se ti avvicini al desco (www.sitocomune.com) trovi la pappa:
> Sezione General - 6.31 Creare una tabella contenente i nomi dei files
> presenti in una directory.

Gia' visto
Gia pappato
Gia' sputato
Non c'e' l'attraversamento delle sottodirectory
Belle'esempio comunque, consiglio a tutti di darci un'occhiata per il
recupero delle informazioni sul file
Ciao e grazie
RobertoA


Sergio MAZZA

unread,
Dec 7, 2009, 4:44:50 AM12/7/09
to
"RobertoA" <amor...@tiscalinet.it> ha scritto nel messaggio
news:4b1cb65c$1...@newsgate.x-privat.org...

> Gia' visto
> Gia pappato
> Gia' sputato
> Non c'e' l'attraversamento delle sottodirectory

Implementarlo non � un gran problema (l'esempio di partenza c'�); diventa un
problema per una struttura di cartelle molto "profonda".

> Belle'esempio comunque, consiglio a tutti di darci un'occhiata per il
> recupero delle informazioni sul file
> Ciao e grazie
> RobertoA

Ciao.
--
Sergio MAZZA

thomas.az

unread,
Dec 7, 2009, 5:39:10 PM12/7/09
to

"RobertoA" <amor...@tiscalinet.it> ha scritto nel messaggio
news:4b1b...@newsgate.x-privat.org...

Prova questa variante: legge a ritroso le varie sottodirectory e le
visualizza in un file di testo
Private Sub Comando31_Click()


Dim MyPath As String
Dim MyName As String

Dim strFiles As String
Dim strFileReport As String
strFiles = ""


MyPath = "c:\BustaPaga\Documenti\FileDma\"

'
Do


MyName = Dir(MyPath)
Do While MyName <> ""

strFiles = strFiles & MyName & vbCr
MyName = Dir
Loop
'
MyPath = Left(MyPath, Len(MyPath) - 1)
MyPath = Left(MyPath, InStrRev(MyPath, "\"))
Loop While InStrRev(MyPath, "\") > 3

MsgBox strFiles

strFileReport = "c:\test"

Open strFileReport For Output As #1
Print #1, strFiles & vbCr
Close #1
'
Dim test
test = Shell("WRITE.EXE " & strFileReport, 1)

End Sub

Saluti
Thomas.az

0 new messages