Differenze tra le versioni di "Dir"

Da Gambas-it.org - Wikipedia.
 
(5 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''. 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.
 +
Dir(Directory AS String [ , Pattern AS String , Filter AS Integer ]) AS String[]
 +
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
 +
 +
<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
  
Dir(Directory AS String [ , 1° parametro AS String , filtro AS Integer ]) AS String[]
 
  
 
+
==Inserire nel 2° parametro più estensioni di file==
Esempio:
+
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 Button1_Click()
+
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 07:07, 11 giu 2023

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.

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

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