f_rename

Rename file or directory.

FRESULT f_rename (
  const XCHAR* OldName, /* Pointer to old file/directory name */
  const XCHAR* 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.

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
The new name is colliding with an existing 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 volume 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.

QuickInfo

Available when _FS_READONLY == 0 and _FS_MINIMIZE == 0.

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