본문 바로가기

Programming/Win32&MFC&COM

파일명 변경하는 API 함수 목록

반응형

콘솔창을 연 상태에서 다음 명령어를 실행하면 다음과 같은 결과를 볼 수 있습니다.

ren /?

간단하게 파일 이름을 변경할 수 있는 방법을 제공합니다.

다음은 코드를 통해서 파일 이름을 변경하는 방법입니다.

파일 이름을 변경하는 몇 가지 방법이 존재합니다.

1. MFC의 CFile::Rename()을 활용하는 방법

이 함수는 두 개의 LPCTSTR 타입의 인자를 전달받습니다.

첫 번째는 lpszOldName이고, 두 번째가 lpszNewName입니다.

사용법은 이전 파일 파일의 경로, 변경할 파일 경로를 전달하면 됩니다.

이 메소드는 static 형식이기 때문에 클래스의 인스턴스가 필요하지 않습니다.

다음과 같은 형태로 사용하면 됩니다.

CFile::Rename(_T("OldName"), _T("NewName"));

2. MoveFile() Win32 API를 활용하는 방법

사용법은 CFile::Rename()과 동일합니다.

이전 파일의 경로와 변경할 파일 경로를 전달하면 됩니다.

3. system() 함수로 ren을 활용하는 방법

다음과 같이 system() 함수를 사용해서 직접 ren을 호출하는 방법입니다.

system("ren oldPath newPath");

유니코드를 위해서 _wsystem() 함수로 대응됩니다.

다만 결과를 확인하기가 쉽지 않다는 단점이 존재합니다.

그리고 파일의 이름만 변경하는 것이기 때문에 뒤에는 파일 이름만 적어야 합니다.

4. C Library의 rename()을 활용하는 방법

유니코드 버전의 _wrename()이 존재합니다.

이전 파일 이름과 새로운 파일의 이름을 전달하는 동일한 방법입니다.

다양한 방법이 존재하며, Win32 프로그램을 개발할 때는 1, 2번을 사용하는 것을 추천합니다.

반응형