Spec-Zone.ru › C

rename

Определено в заголовке <stdio.h>
int rename( const char* old_filename, const char* new_filename );

Изменяет имя файла. Файл идентифицируется строкой символов, на которую указывает old_filename. Новое имя файла идентифицируется строкой символов, на которую указывает new_filename.

Если new_filename существует, поведение определяется реализацией.

Параметры

old_filename - указатель на строку с нулевым завершением, содержащую путь к файлу, который требуется переименовать
new_filename - указатель на строку с нулевым завершением, содержащую новый путь к файлу

Возвращаемое значение

значение 0 при успехе или ненулевое значение при ошибке.

Примечания

POSIX описывает множество дополнительных деталей по семантике этой функции.

Пример

#include <stdio.h>
#include <stdlib.h>
 
int main(void)
{
    FILE* fp = fopen("from.txt", "w"); // create file "from.txt"
    if (!fp)
    {
        perror("from.txt");
        return EXIT_FAILURE;
    }
    fputc('a', fp); // write to "from.txt"
    fclose(fp);
 
    int rc = rename("from.txt", "to.txt");
    if (rc)
    {
        perror("rename");
        return EXIT_FAILURE;
    }
 
    fp = fopen("to.txt", "r");
    if(!fp)
    {
        perror("to.txt");
        return EXIT_FAILURE;
    }
    printf("%c\n", fgetc(fp)); // read from "to.txt"
    fclose(fp);
 
    return EXIT_SUCCESS;
}

Возможный вывод:

a

Ссылки

  • Стандарт C23 (ISO/IEC 9899:2023):
    • 7.21.4.2 Функция rename (стр: TBD)
  • Стандарт C17 (ISO/IEC 9899:2018):
    • 7.21.4.2 Функция rename (стр: TBD)
  • Стандарт C11 (ISO/IEC 9899:2011):
    • 7.21.4.2 Функция rename (стр: 302-303)
  • Стандарт C99 (ISO/IEC 9899:1999):
    • 7.19.4.2 Функция rename (стр: 268-269)
  • Стандарт C89/C90 (ISO/IEC 9899:1990):
    • 4.9.4.2 Функция rename

См. также

remove
удаляет файл
(функция)
Документация C++ для rename

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/c/io/rename

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API