## f_rename

ファイルまたはサブ ディレクトリの名前の変更または移動します。

    FRESULT f_rename (
      const TCHAR* old_name, /* [IN] 古いオブジェクト名 */
      const TCHAR* new_name  /* [IN] 新しいオブジェクト名 */
    );

#### 引数

old_name
  変更対象のファイルまたはサブ ディレクトリのパス名を示すヌル文字`'\0'`終端の文字列へのポインタを指定します。
new_name
  新しいパス名を示すヌル文字`'\0'`終端の文字列へのポインタを指定します。また、ドライブ番号は指定しても無視され、`old_name`で決められたボリューム上のオブジェクトとして扱われます。これと同じパス名(`old_name`は除く)のオブジェクトが存在すると、関数は`FR_EXIST`で失敗します。

#### 戻り値

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

#### 解説

ファイルまたはサブ ディレクトリの名前を変更します。また、同時に別のディレクトリへの移動も可能ですが、異なるドライブ間の移動はできません。開かれているオブジェクトに対する使用は不正な操作となり、FAT構造が破壊される可能性があります。多重アクセス制御が有効のときは安全に拒否されます。

#### 対応情報

`_FS_READONLY == 0`で、且つ`_FS_MINIMIZE == 0`のときに使用可能です。

#### 使用例

        /* デフォルト ドライブにあるオブジェクトの名前を変更 */
        f_rename("oldname.txt", "newname.txt");

        /* ドライブ2にあるオブジェクトの名前を変更 */
        f_rename("2:oldname.txt", "newname.txt");

        /* 名前の変更と同時に別のディレクトリに移動 */
        f_rename("log.txt", "old/log0001.txt");

戻る