Compartilhar via


rename, _wrename

Renomear um arquivo ou diretório.

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

Parâmetros

  • oldname
    Ponteiro para o nome antigo.

  • newname
    Ponteiro para o novo nome.

Valor de retorno

Cada uma dessas funções retornará 0 se for bem-sucedida. Em um erro, a função retorna um valor diferente de zero e define errno a um dos seguintes valores:

  • EACCES
    Arquivo ou diretório especificado por newname já existe ou não podem ser criados (caminho inválido); ou o oldname é um diretório e o newname especifica um caminho diferente.

  • ENOENT
    Arquivo ou caminho especificado pelo oldname não seja localizado).

  • EINVAL
    O nome contiver caracteres inválidos.

Para outros valores de retorno possíveis, consulte _doserrno, _errno, syserrlist, e _sys_nerr.

Comentários

A função de rename renomeia o arquivo ou diretório especificado por oldname ao nome fornecido por newname. O nome antigo deve ser o caminho de um arquivo existente ou diretório. O novo nome não deve ser o nome de um arquivo existente ou diretório. Você pode usar rename para mover um arquivo de um diretório ou o dispositivo para outro capacete um caminho diferente no argumento de newname . Porém, você não pode usar rename para mover um diretório. Os diretórios podem ser renomeados, mas não ser movido.

_wrename é uma versão de ampla caractere de _rename; os argumentos a _wrename são cadeias de caracteres de ampla caractere. _wrename e _rename se comportam idêntica de outra forma.

Mapeamentos da rotina de texto genérico

Rotina TCHAR.H

_UNICODE & _MBCS não definido

_MBCS definido

_UNICODE definido

_trename

renomear

renomear

_wrename

Requisitos

Rotina

Cabeçalho necessário

renomear

<io.h ou> stdio.h <>

_wrename

<stdio.h> ou <wchar.h>

Para informações adicionais de compatibilidade, consulte Compatibilidade na Introdução.

Bibliotecas

Todas as versões das Bibliotecas em tempo de execução C.

Exemplo

// 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 );
}

Saída

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

Equivalência do .NET Framework

System::IO::File::Move

Consulte também

Referência

Manipulação de arquivos