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.
  
Sarà necessario richiamare la libreria (nella sua attuale versione): ''libgio-2.0.so.0.4002.0''
+
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



Riferimenti