Differenze tra le versioni di "Rename()"

Da Gambas-it.org - Wikipedia.
 
Riga 32: Riga 32:
 
=Riferimenti=
 
=Riferimenti=
 
* http://linux.die.net/man/3/rename
 
* http://linux.die.net/man/3/rename
* http://www.tutorialspoint.com/c_standard_library/c_function_rename.htm
+
* http://www.gnu.org/software/libc/manual/html_node/Renaming-Files.html#Renaming-Files

Versione attuale delle 18:24, 17 lug 2016

La funzione della libreria di C

int rename(const char *__old, const char *__new)

rinomina un file.
Va precisato che non viene effettuata una copia del file: al file originario verrà semplicemente cambiato il nome. Così, se per il file rinominato viene specificato un diverso percorso rispetto a quello del file originario, quest'ultimo viene cancellato.


Volendola utilizzare in Gambas, bisognerà dichiararla con Extern, nonché dichiarare la libreria di C: libc.so.6, nella quale la funzione è contenuta:

Private Extern rename(__old As String, __new As String) As Integer In "libc:6"


Semplice esempio di uso in Gambas:

Library "libc:6"

' int rename(const char *__old, const char *__new)
' Rename file OLD to NEW.
Private Extern rename(__old As String, __new As String) As Integer


Public Sub Main()

 Dim i As Integer
 
   i = rename("/percorso/e/vecchio/nome/del/file", "/percorso/e/nuovo/nome/del/file")
   If i < 0 then Error.Raise("Impossibile rinominare il file !")
 
End



Riferimenti