Verificare l'esistenza di una directory
Da Gambas-it.org - Wikipedia.
Versione del 21 mag 2017 alle 15:10 di Vuott (Discussione | contributi)
Per verificare se una Directory esiste, si possono adottare almeno due modalità.
Uso delle risorse di Gambas
Si può utilizzare la funzione Exist( ), la quale ritorna vero se il file o la cartella, indicati nel suo parametro, sono esistenti.
Esempio pratico:
Public Sub Main() Dim ris, cartella As String cartella = "/tmp" If Exist(cartella) = False Then ris = " non" Print "La Directory "; cartella; ris; " esiste !" End
Uso della funzione esterna opendir( )
Un'altra modalità prevede l'uso della funzione esterna "opendir( )", dichiarata nel file header "/usr/include/dirent.h". Tale funzione esterna restituisce un Puntatore valido, se non ha riscontrato errori nel tentativo di accesso alla Dyrectory impostata, altrimenti ritorna NULL, che in Gambas corrisponde, come valore predefinito di una variabile di tipo Puntatore, allo zero (0).
Library "libc:6" ' DIR *opendir (const char *__name) ' Open a directory stream on NAME. Private Extern opendir(name As String) As Pointer Public Sub Main() Dim cartella As String Dim drc As Pointer cartella = "/abcde" drc = opendir(cartella) If drc == 0 Then Error.Raise("Directory inesistente !") End