파일명 변경하는 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번을 사용하는 것을 추천합니다.