Fonction rename

Entête à inclure

#include <stdio.h>  // <cstdio> en C++

Fonction rename

int rename( const char * oldName, const char * newName );

Cette fonction permet de renommer ou de déplacer un fichier.

Paramètres

  • oldName: représente le nom actuel du fichier. Attention, le fichier spécifié doit bien entendu exister.
  • newName: représente le nouveau nom du fichier. Bien entendu, ce nom ne doit pas déjà être utilisé.

Valeur de retour

Si le fichier est bien rénomé, alors la valeur retournée par cette fonction sera nulle. Si une valeur non nulle est retournée alors cela indique qu'une erreur s'est produite. Dans ce cas, la variable errno contiendra une valeur qui permettra de mieux spécifier l'erreur qui s'est produite.

Codes erreurs pouvant être retournés

ENOENT : le nom de fichier spécifié n'existe pas ou l'un des deux noms spécifié est chaîne vide.

EACCES : un problème de sécurité lors de l'accès au fichier a été constaté.

...

Exemple de code

#include <stdio.h>
#include <stdlib.h>

int main( int argc, char * argv[] ) {
    
    argc--;   argv++;
    
    if ( argc != 2 ) {
        printf( "Usage: sample oldname newname...\n" );
        exit( 0 );
    }
    
    int returnCode = rename( argv[0], argv[1] );
    if ( returnCode != 0 ) {
        fprintf( stderr, "Error: cannot rename the file.\n" );
    }
        
    return 0;
}

Sujets connexes