rename, _wrename

파일 또는 디렉터리의 이름을 바꿉니다.

구문

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

매개 변수

oldname
이전 이름에 대한 포인터입니다.

newname
새 이름에 대한 포인터입니다.

반환 값

이러한 각 함수는 성공하면 0을 반환합니다. 오류 발생 시 함수는 0이 아닌 값을 반환하고 errno를 다음 값 중 하나로 설정합니다.

errno Condition
EACCES 지정한 newname 파일 또는 디렉터리가 이미 있거나 만들 수 없거나(잘못된 경로) oldname 디렉터리이거나 newname 다른 경로를 지정합니다.
ENOENT 지정한 oldname 파일 또는 경로를 찾을 수 없습니다.
EINVAL 이름에 잘못된 문자가 포함되어 있습니다.

가능한 다른 반환 값은 , _errno, syserrlist_sys_nerr를 참조_doserrno하세요.

설명

이 함수는 rename 지정한 파일 또는 디렉터리의 이름을 지정한 oldname 이름으로 newname바꿉니다. 이전 이름은 기존 파일이나 디렉터리의 경로여야 합니다. 새 이름은 기존 파일 또는 디렉터리의 이름이 아니어야 합니다. 인수에서 다른 경로를 newname 제공하여 파일을 한 디렉터리 또는 디바이스에서 다른 디렉터리로 이동하는 데 사용할 rename 수 있습니다. 그러나 디렉터리를 이동하는 데는 사용할 rename 수 없습니다. 디렉터리는 이름을 바꿀 수는 있지만 이동할 수는 없습니다.

_wrename_rename의 와이드 문자 버전이며, _wrename 에 대한 인수는 와이드 문자 문자열입니다. 그렇지 않으면_wrename_rename 이 동일하게 작동합니다.

기본적으로 이 함수의 전역 상태는 애플리케이션으로 범위가 지정됩니다. 이 동작을 변경하려면 CRT의 전역 상태를 참조하세요.

일반 텍스트 루틴 매핑

TCHAR.H 루틴 _UNICODE 정의 _MBCS 되지 않음 _MBCS 정의 _UNICODE 정의
_trename rename rename _wrename

요구 사항

루틴에서 반환된 값 필수 헤더
rename <io.h> 또는 <stdio.h>
_wrename <stdio.h> 또는 <wchar.h>

호환성에 대한 자세한 내용은 호환성을 참조하세요.

라이브러리

모든 버전의 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'

참고 항목

파일 처리