Differenze tra le versioni di "Rename()"

Da Gambas-it.org - Wikipedia.
 
(5 versioni intermedie di uno stesso utente non sono mostrate)
Riga 1: Riga 1:
 
La funzione della libreria di C
 
La funzione della libreria di C
  int rename(const char *old_filename, const char *new_filename);
+
  int rename(const char *__old, const char *__new)
 
rinomina un file.  
 
rinomina un file.  
 
<BR>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.
 
<BR>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.
Riga 6: Riga 6:
  
 
Volendola utilizzare in Gambas, bisognerà dichiararla con Extern, nonché dichiarare la libreria di C: ''libc.so.6'', nella quale la funzione è contenuta:
 
Volendola utilizzare in Gambas, bisognerà dichiararla con Extern, nonché dichiarare la libreria di C: ''libc.so.6'', nella quale la funzione è contenuta:
  Private <FONT color=#B22222>Extern rename</font>(old_filename As String, new_filename As String) As Integer In "<FONT color=#B22222>libc:6</font>"
+
  Private <FONT color=#B22222>Extern rename</font>(__old As String, __new As String) As Integer In "<FONT color=#B22222>libc:6</font>"
  
  
  
 
Semplice esempio di uso in Gambas:
 
Semplice esempio di uso in Gambas:
  <FONT color=Gray>' ''int rename(const char *old_filename, const char *new_filename)''</font>
+
Library "libc:6"
  Private <FONT color=#B22222>Extern rename</font>(old_filename As String, new_filename As String) As Integer In "<FONT color=#B22222>libc:6</font>"
+
 +
  <FONT color=Gray>' ''int rename(const char *__old, const char *__new)''
 +
' ''Rename file OLD to NEW.''</font>
 +
  Private Extern <FONT color=#B22222>rename</font>(__old As String, __new As String) As Integer
 +
 
   
 
   
 
  '''Public''' Sub Main()
 
  '''Public''' Sub Main()
 
   
 
   
  rename("''/percorso/e/vecchio/nome/del/file''", "''/percorso/e/nuovo/nome/del/file''")
+
  Dim i As Integer
 +
 
 +
    i = <FONT color=#B22222>rename</font>("<FONT color=Gray>''/percorso/e/vecchio/nome/del/file''</font>", "<FONT color=Gray>''/percorso/e/nuovo/nome/del/file''</font>")
 +
    If i < 0 then Error.Raise("Impossibile rinominare il file !")
 
    
 
    
 
  '''End'''
 
  '''End'''
 +
 +
 +
 +
 +
=Riferimenti=
 +
* http://linux.die.net/man/3/rename
 +
* 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