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
См. также
| удаляет файл (функция) |
|
Документация C++ для rename |
|
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/c/io/rename