f_rename

Rename file or directory.

FRESULT f_rename (
  const char* OldName, /* Pointer to old file/directory name */
  const char* NewName  /* Pointer to new file/directory name */
);

Parameters

OldName
Pointer to a null-terminated string specifies the old file/directory name to be renamed.
NewName
Pointer to a null-terminated string specifies the new file/directory name without drive number. Existing object nannot be specified.

Return Values

FR_OK (0)
The function succeeded.
FR_NO_FILE
Could not find the file nor directory.
FR_NO_PATH
Could not find the path.
FR_INVALID_NAME
The file name is invalid.
FR_INVALID_DRIVE
The drive number is invalid.
FR_NOT_READY
The disk drive cannot work due to no medium in the drive or any other reason.
FR_DENIED
The new name could not be created due to any reason.
FR_WRITE_PROTECTED
The medium is write protected.
FR_RW_ERROR
The function failed due to a disk error or an internal error.
FR_NOT_ENABLED
The logical drive has no work area.
FR_NO_FILESYSTEM
There is no valid FAT partition on the disk.

Description

Rename a file or directory and can move it to other directory. Logical drive number is determined by old name, new name must not contain logical drive number. This function is not supported in read-only configuration or minimization level of >= 1.

Note: In this revision, moving any directory to other directory collapses the FAT structure on the disk.

Example

    // Rename file or directory
    f_rename("oldname.txt", "newname.txt");

    // Rename and move file to other directory simultaneously
    f_rename("oldname.txt", "dir1/newname.txt");

Return