f_rename

The f_rename function renames and/or moves a file or sub-directory.

FRESULT f_rename (
  const TCHAR* old_name, /* [IN] Old object name */
  const TCHAR* new_name  /* [IN] New object name */
);

Parameters

old_name
Pointer to a null-terminated string that specifies the existing file or sub-directory to be renamed.
new_name
Pointer to a null-terminated string that specifies the new object name. A drive number may be specified in this string but it is ignored and assumed as the same drive of the old_name. Any object with this path name except old_name must not be exist, or the function fails with FR_EXIST.

Return Values

FR_OK, FR_DISK_ERR, FR_INT_ERR, FR_NOT_READY, FR_NO_FILE, FR_NO_PATH, FR_INVALID_NAME, FR_EXIST, FR_WRITE_PROTECTED, FR_INVALID_DRIVE, FR_NOT_ENABLED, FR_NO_FILESYSTEM, FR_TIMEOUT, FR_LOCKED, FR_NOT_ENOUGH_CORE

Description

Renames a file or sub-directory and can also move it to other directory in the same volume. The object to be renamed must not be an open object, or the FAT volume can be collapsed. Such the wrong operation is rejected safely when file lock function is enabled.

QuickInfo

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

Example

    /* Rename an object in the default drive */
    f_rename("oldname.txt", "newname.txt");

    /* Rename an object in the drive 2 */
    f_rename("2:oldname.txt", "newname.txt");

    /* Rename an object and move it to other directory in the volume */
    f_rename("log.txt", "old/log0001.txt");

Return