Partager via


rename, _wrename

Renommer un fichier ou un répertoire.

int rename( 
   const char *oldname, 
   const char *newname  
); 
int _wrename( 
   const wchar_t *oldname, 
   const wchar_t *newname  
);

Paramètres

  • oldname
    Pointeur vers l'ancien nom.

  • newname
    Pointeur vers le nouveau nom.

Valeur de retour

Chacune de ces fonctions retourne 0 en cas de succès. Sur une erreur, la fonction retourne une valeur différente de zéro et définit errno à l'une des valeurs suivantes :

  • EACCES
    Le fichier ou le répertoire spécifié par newname existe déjà ou n'a pas pu être créé (chemin d'accès non valide) ; ou oldname est un répertoire et le newname spécifie un chemin différent.

  • ENOENT
    Fichier ou chemin d'accès spécifié par oldname introuvable.

  • EINVAL
    Nom contient des caractères non valides.

Pour d'autres valeurs de retour possibles, consultez _doserrno, _errno, syserrlist, et _sys_nerr.

Notes

La fonction renommer renomme le fichier ou le répertoire spécifié par oldname avec le nom fourni par newname. L'ancien nom doit correspondre au chemin d'accès d'un fichier existant ou d'un répertoire. Le nouveau nom ne doit pas être le nom d'un fichier existant ou d'un répertoire. Vous pouvez utiliser renommer pour déplacer un fichier à partir d'un répertoire ou d'un périphérique à l'autre en donnant un chemin différent dans l'argument de newname. Toutefois, vous ne pouvez pas utiliser renommer pour déplacer un répertoire. Les répertoires peuvent être renommés, mais pas être déplacés.

_wrename est une version à caractères larges de _rename; les arguments de _wrename sont des chaînes à caractères larges. Sinon, _wrename et _rename se comportent de la même façon.

Mappages de routines de texte générique

Routine TCHAR.H

_UNICODE & _MBCS non définis

_MBCS défini

_UNICODE défini

_trename

renommer

renommer

_wrename

Configuration requise

Routine

En-tête requis

renommer

<io.h> or <stdio.h>

_wrename

<stdio.h> ou <wchar.h>

Pour plus d'informations sur la compatibilité, consultez Compatibilité dans l'introduction.

Bibliothèques

Toutes les versions des bibliothèques Runtime C.

Exemple

// crt_renamer.c
/* This program attempts to rename a file named
 * CRT_RENAMER.OBJ to CRT_RENAMER.JBO. For this operation
 * to succeed, a file named CRT_RENAMER.OBJ must exist and
 * a file named CRT_RENAMER.JBO must not exist.
 */

#include <stdio.h>

int main( void )
{
   int  result;
   char old[] = "CRT_RENAMER.OBJ", new[] = "CRT_RENAMER.JBO";

   /* Attempt to rename file: */
   result = rename( old, new );
   if( result != 0 )
      printf( "Could not rename '%s'\n", old );
   else
      printf( "File '%s' renamed to '%s'\n", old, new );
}

Sortie

File 'CRT_RENAMER.OBJ' renamed to 'CRT_RENAMER.JBO'

Équivalent .NET Framework

System.IO.File::Move

Voir aussi

Référence

Gestion de fichiers