Differenze tra le versioni di "Sapere se un file esiste mediante le funzioni esterne del API di libgio"
Da Gambas-it.org - Wikipedia.
Riga 3: | Riga 3: | ||
E' possibile con alcune funzioni della libreria ''Libgio'' sapere se un determinato file esiste. | E' possibile con alcune funzioni della libreria ''Libgio'' sapere se un determinato file esiste. | ||
− | + | E' necessario avere installata nel sistema e richiamare in Gambas la libreria dinamica condivisa: "''libgio-2.0.so''" | |
− | |||
Riga 17: | Riga 16: | ||
' ''Check if a particular file exists.''</font> | ' ''Check if a particular file exists.''</font> | ||
Private Extern g_file_query_exists(gfile As Pointer, cancellable As Pointer) As Boolean | Private Extern g_file_query_exists(gfile As Pointer, cancellable As Pointer) As Boolean | ||
+ | |||
+ | <FONT Color=gray>' ''void g_object_unref (gpointer object)'' | ||
+ | ' ''Decreases the reference count of object.''</font> | ||
+ | Private Extern g_object_unref(gobject As Pointer) | ||
Riga 24: | Riga 27: | ||
Dim est As Boolean | Dim est As Boolean | ||
− | gf = g_file_new_for_path("''/percorso/del/file''") | + | gf = g_file_new_for_path("<FONT Color=gray>''/percorso/del/file''</font>") |
If IsNull(gf) Then Error.Raise("Impossibile creare un oggetto GFile con il percorso del file impostato !") | If IsNull(gf) Then Error.Raise("Impossibile creare un oggetto GFile con il percorso del file impostato !") | ||
Riga 33: | Riga 36: | ||
Print "Il file non esiste." | Print "Il file non esiste." | ||
Endif | Endif | ||
− | + | ||
+ | g_object_unref(gf) | ||
+ | |||
'''End''' | '''End''' | ||
Versione delle 10:16, 17 feb 2018
La libreria Libgio fornisce un'astrazione del file system che permette alle applicazioni di accedere ai file locali e remoti.
E' possibile con alcune funzioni della libreria Libgio sapere se un determinato file esiste.
E' necessario avere installata nel sistema e richiamare in Gambas la libreria dinamica condivisa: "libgio-2.0.so"
Mostriamo di seguito un semplice esempio pratico:
Library "libgio-2.0:0.4002.0" ' GFile * g_file_new_for_path (const char *path) ' Constructs a GFile for a given path. This operation never fails. Private Extern g_file_new_for_path(path As String) As Pointer ' gboolean g_file_query_exists (GFile *file, GCancellable *cancellable) ' Check if a particular file exists. Private Extern g_file_query_exists(gfile As Pointer, cancellable As Pointer) As Boolean ' void g_object_unref (gpointer object) ' Decreases the reference count of object. Private Extern g_object_unref(gobject As Pointer) Public Sub Main() Dim gf As Pointer Dim est As Boolean gf = g_file_new_for_path("/percorso/del/file") If IsNull(gf) Then Error.Raise("Impossibile creare un oggetto GFile con il percorso del file impostato !") est = g_file_query_exists(gf, 0) If est Then Print "Il file esiste." Else Print "Il file non esiste." Endif g_object_unref(gf) End