rename
Defined in header <stdio.h>
|
||
---|---|---|
|
Changes the filename of a file. The file is identified by character string pointed to by old_filename
. The new filename is identified by character string pointed to by new_filename
.
If new_filename
exists, the behavior is implementation-defined.
Parameters
old_filename | - | pointer to a null-terminated string containing the path identifying the file to rename |
new_filename | - | pointer to a null-terminated string containing the new path of the file |
Return value
0
upon success or non-zero value on error.
Notes
POSIX specifies many additional details on the semantics of this function.
Example
#include <stdio.h>
int main(void)
{
FILE* fp = fopen("from.txt", "w"); // create file "from.txt"
if(!fp) { perror("from.txt"); return 1; }
fputc('a', fp); // write to "from.txt"
fclose(fp);
int rc = rename("from.txt", "to.txt");
if(rc) { perror("rename"); return 1; }
fp = fopen("to.txt", "r");
if(!fp) { perror("to.txt"); return 1; }
printf("%c\n", fgetc(fp)); // read from "to.txt"
fclose(fp);
}
Output:
a
References
C11 standard (ISO/IEC 9899:2011):
- 7.21.4.2 The rename function (p: 302-303)
C99 standard (ISO/IEC 9899:1999):
- 7.19.4.2 The rename function (p: 268-269)
C89/C90 standard (ISO/IEC 9899:1990):
- 4.9.4.2 The rename function
See also
erases a file (function) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
http://en.cppreference.com/w/c/io/rename