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 old name.
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_EXIST
There is an object that have a name equal to new name.
FR_DENIED
The new name could not be created due to any reason.
FR_WRITE_PROTECTED
The medium is write protected.
FR_DISK_ERR
The function failed due to an error in the disk function.
FR_INT_ERR
The function failed due to a wrong FAT structure 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.

Example

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

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

Return