Dir: differenze tra le versioni

Da Gambas-it.org - Wikipedia.
Vai alla navigazione Vai alla ricerca
Nessun oggetto della modifica
Nessun oggetto della modifica
 
(6 versioni intermedie di uno stesso utente non sono mostrate)
Riga 1: Riga 1:
La funzione '''Dir''' restituisce un array stringa contenente i nomi dei file presenti nella cartella puntata aventi le caratteristiche indicate nel secondo parametro. Se non viene specificato tale parametro, verranno restituiti tutti i file presenti nella ''Directory''. E' previsto, inoltre, un terzo parametro per poter specificare il tipo di file che dovrà essere restituito. Se tale filtro non viene specificato, vengono restituiti tutti i file e tutte le cartelle.
La funzione '''DIR''' restituisce un array stringa contenente i nomi dei file presenti nella cartella puntata aventi le caratteristiche indicate nel secondo parametro. Se non viene specificato tale parametro, verranno restituiti tutti i file presenti nella ''Directory''.
<BR>E' previsto, inoltre, un terzo parametro, relativo alle costanti previste dalla Classe ''gb'', per poter specificare il tipo di file che dovrà essere restituito. Se tale filtro non viene specificato, vengono restituiti tutti i file e tutte le cartelle.
<BR>Qualora nel terzo argomento è impostata la costante ''gb.FullPath'', allora la funzione "Dir()" ritorna il percorso completo del file.


  Dir(Directory AS String [ , 1° parametro AS String , filtro AS Integer ]) AS String[]
La sua sintassi è:
  Dir(Directory AS String [ , Pattern AS String , Filter AS Integer ]) AS String[]
 
===Esempio===
Poniamo come esempio di avere una cartella, chiamata ''cartella'', nel percorso ''/tmp''.
<BR>All'interno di questa cartella vi sono tre file con estensione JPG e tre file con estensione TXT.
<BR>Noi vogliamo individuare soltanto i file aventi estensione JPG.
Public Sub Main()
  Dim s As String
<FONT color=gray>' ''Raccoglie ogni singolo contenuto presente nel percorso ''/tmp/cartella/'' avente l'estensione ".jpg" e che sia un "file":''</font>
  For Each s In Dir("/tmp/cartella", "*.jpg", gb.File)
    Print s
  Next
End




Esempio:
==Inserire nel 2° parametro più estensioni di file==
'''Public''' Sub Button1_Click()
Per inserire nel 2° parametro ''Pattern'' della funzione "Dir()" due o più estensioni di file, si può usare la stringa "<FONT color=#B22222>*.{png,jpg,gif}</font>".
Public Sub Main()
  Dim percorsoDir, nomefile As String
  percorsoDir = "<FONT color=gray>''/percorso/della/cartella/contenente/i/file''</font>"
   
   
<FONT color=#006400>' ''Raccoglie tutti i file nella ''Home'' aventi l'estensione ''.jpg'',''
  For Each nomefile In Dir(percorsoDir, "<FONT color=#B22222>*.{png,jpg,gif}</font>", gb.File)
' ''li ordina alfabeticamente, e quindi li mostra in console:''</font>
    Print nomefile
  For Each $fl in Dir(User.Home &/ "*.jpg").Sort()
  Next
    Print $fl
  Next
   
   
  '''End'''
  End

Versione attuale delle 08:00, 20 ago 2025

La funzione DIR restituisce un array stringa contenente i nomi dei file presenti nella cartella puntata aventi le caratteristiche indicate nel secondo parametro. Se non viene specificato tale parametro, verranno restituiti tutti i file presenti nella Directory.
E' previsto, inoltre, un terzo parametro, relativo alle costanti previste dalla Classe gb, per poter specificare il tipo di file che dovrà essere restituito. Se tale filtro non viene specificato, vengono restituiti tutti i file e tutte le cartelle.
Qualora nel terzo argomento è impostata la costante gb.FullPath, allora la funzione "Dir()" ritorna il percorso completo del file.

La sua sintassi è:

Dir(Directory AS String [ , Pattern AS String , Filter AS Integer ]) AS String[]

Esempio

Poniamo come esempio di avere una cartella, chiamata cartella, nel percorso /tmp.
All'interno di questa cartella vi sono tre file con estensione JPG e tre file con estensione TXT.
Noi vogliamo individuare soltanto i file aventi estensione JPG.

Public Sub Main()

 Dim s As String

' Raccoglie ogni singolo contenuto presente nel percorso /tmp/cartella/ avente l'estensione ".jpg" e che sia un "file":
 For Each s In Dir("/tmp/cartella", "*.jpg", gb.File)
   Print s
 Next

End


Inserire nel 2° parametro più estensioni di file

Per inserire nel 2° parametro Pattern della funzione "Dir()" due o più estensioni di file, si può usare la stringa "*.{png,jpg,gif}".

Public Sub Main()

 Dim percorsoDir, nomefile As String

 percorsoDir = "/percorso/della/cartella/contenente/i/file"

 For Each nomefile In Dir(percorsoDir, "*.{png,jpg,gif}", gb.File)
   Print nomefile
 Next

End