# FatFs - f_rename

## f_rename

Renames an object.

    FRESULT f_rename (
      const TCHAR* OldName, /* Pointer to old object name */
      const TCHAR* NewName  /* Pointer to new object name */
    );

#### Parameters

OldName
  Pointer to a null-terminated string specifies the old object name to be renamed.
NewName
  Pointer to a null-terminated string specifies the new object name without drive number.

#### Return Values

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

#### Description

Renames an object (file or directory) and can also move it to other directory. The logical drive number is determined by old name, new name must not contain a logical drive number. Do not rename open objects.

#### QuickInfo

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

#### Example

        /* Rename an object */
        f_rename("oldname.txt", "newname.txt");

        /* Rename and move an object to other directory */
        f_rename("oldname.txt", "dir1/newname.txt");

Return