rename  função

Protótipo

int rename (const char *caminho_antigo, const char *caminho_novo);

Descrição

Renomeia o arquivo ou diretório especificado pelo parâmetro caminho_antigo para o nome caminho_novo.

Se o caminho_antigo e o caminho_novo estão localizados em diretórios diferentes, o arquivo é movido para o novo diretório, se suportado pelo sistema.

Em caso de sucesso, a função rename é atômica. Um programa nunca verá tanto o arquivo caminho_antigo quanto o caminho_novo em existência. O programa veria apenas o caminho_antigo ou o caminho_novo, não apenas um deles ou, até, nenhum deles.

Se o caminho_novo especifica um caminho já existente, a função poderá ou falhar ou sobreescrever o caminho existente, dependendo da implementação da biblioteca padrão utilizada.

Parâmetros

caminho_antigo - Caminho a ser renomeado. Pode ser tanto um arquivo quanto um diretório.

caminho_novo - Caminho destino.

Valor de retorno

Se o arquivo foi renomeado com sucesso, retorna 0.

Em caso de erro, a função retorna um número inteiro não-zero.

Exemplo
#include <stdio.h>

int main() {
    // caminhos no formato do sistema operacional Windows
    const char* caminho = "C:\\arquivo.txt";
    const char* caminho_novo = "C:\\arq.txt";

    if(rename(caminho, caminho_novo) == 0) {
        printf("Arquivo %s renomeado para %s com sucesso!\n", caminho, caminho_novo);
    } else {
        fprintf(stdderr, "Não foi possível renomear o arquivo %s.", caminho);
        return 1;
    }

    return 0;
}
Veja também

remove - remove um arquivo função