次の方法で共有


rename、_wrename

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

int rename(
   const char *oldname,
   const char *newname 
);
int _wrename(
   const wchar_t *oldname,
   const wchar_t *newname 
);

パラメーター

  • oldname
    古い名前へのポインター。

  • 新しい名前
    新しい名前へのポインター。

戻り値

これらの関数は正常に終了した場合は 0 を返します。エラー関数の戻り値以外の値を次の値の 1 に設定 errno :

  • EACCES
    newname で指定されたファイルまたはディレクトリが既に存在するかまたは作成できなかった (無効なパス); または oldname は ディレクトリでnewname は 異なるパスを指定します。

  • ENOENT
    検索 oldname してファイルまたは指定したパス。

  • EINVAL
    名前が無効な文字が含まれています。

そのほかの有効な戻り値のは_doserrno_errnosyserrlist と _sys_nerr を参照してください。

解説

名前の変更 の関数は newname で指定された名前に oldname で指定されたファイルまたはディレクトリの名前を変更します。古い名前は既存のファイルまたはディレクトリのパスである必要があります。新しい名前が既存のファイルまたはディレクトリ名にする必要があります。1 個のファイルまたはディレクトリから別の型に newname の 引数の別のパスを指定してデバイスを移動するに 名前の変更 を使用できます。ただしディレクトリを移動するに 名前の変更 は使用できません。ディレクトリの名前を変更したりコントロールを移動できません。

_wrename は のワイド文字バージョンです _rename; _wrename への引数はワイド文字列です。_wrename_renameこれらの関数の動作は同じです。

汎用テキスト ルーチンのマップ

TCHAR.H のルーチン

_UNICODE および _MBCS が未定義の場合

_MBCS が定義されている場合

_UNICODE が定義されている場合

_trename

名前の変更

名前の変更

_wrename

必要条件

ルーチン

必須ヘッダー

名前の変更

<io.h> または <stdio.h>

_wrename

<stdio.h> または <wchar.h>

互換性の詳細については、「C ランタイム ライブラリ」の「互換性」を参照してください。

ライブラリ

C ランタイム ライブラリのすべてのバージョン。

使用例

// crt_renamer.c
/* This program attempts to rename a file named
 * CRT_RENAMER.OBJ to CRT_RENAMER.JBO. For this operation
 * to succeed, a file named CRT_RENAMER.OBJ must exist and
 * a file named CRT_RENAMER.JBO must not exist.
 */

#include <stdio.h>

int main( void )
{
   int  result;
   char old[] = "CRT_RENAMER.OBJ", new[] = "CRT_RENAMER.JBO";

   /* Attempt to rename file: */
   result = rename( old, new );
   if( result != 0 )
      printf( "Could not rename '%s'\n", old );
   else
      printf( "File '%s' renamed to '%s'\n", old, new );
}

出力

File 'CRT_RENAMER.OBJ' renamed to 'CRT_RENAMER.JBO'

同等の .NET Framework 関数

System::IO::File::Move

参照

関連項目

ファイル処理