2017-12-16 2 views
-1

"pics"라는 내 폴더에 .jpg 이미지가 많습니다.이 모든 사진을 복사하여 새 폴더로 옮기고 싶습니다. "PicsSelected".이 작업을 수행하는 방법을 연구했으며 가장 쉬운 방법은 rename() 함수를 사용하는 것입니다. 시각적 인 목적을 위해, 이것이 내가 (내가 넷빈즈에서 일하고 있어요)하고 싶은 것입니다 :폴더의 파일을 C++의 다른 폴더로 이동하는 방법

int main(int argc, char** argv) { 
    string copyFrom = "C:\\Users\pwhit\OneDrive\Documents\NetBeansProjects\MoveFiles\pics"; 
    string pasteTo = "C:\\Users\pwhit\OneDrive\Documents\NetBeansProjects\MoveFiles\PicsSelected"; 
    rename(copyFrom.c_str(), pasteTo.c_str()); 
    return 0; 
} 

이 프로젝트는하지만 실행 : enter image description here

을 지금까지, 이것은 내가 내 주요 방법이 무엇 'PicsSelected'폴더를 확인하면 폴더가 비어 있습니다. 내 '사진'폴더의 내용이 대상 폴더로 이동되지 않는 이유는 무엇입니까? 잘못된 구문을 사용하고 있습니까? 어떤 도움이라도 대단히 감사합니다.

+3

rename()은 단일 파일이나 디렉토리의 이름을 변경합니다. 파일을 한 디렉토리에서 다른 디렉토리로 자동 이동하지는 않습니다. 그리고 만약 당신이'rename()'에서 반환 값을 검사하는 것을 꺼려한다면, 실패했다는 것을 알고 있었을 것입니다. –

답변

0

rename은 개별 파일에서 작동합니다. 필요한 결과를 얻으려면 디렉토리의 모든 파일에 대해 루프를 실행하십시오. 그러나 대상은 대상 디렉토리 이름이어야합니다. 이것은 unix rename 명령과 매우 유사합니다.

관련 문제