2011-09-17 7 views
0

디렉토리의 모든 파일을 삭제하려면 어떻게해야합니까? 내가 RMDIR 및 인터넷에 제시된 다른 방법을 사용했지만 아무도 나를 도왔이 그들 중 하나입니다 (I는 현재 작업 디렉토리에있는 디렉토리의 tmp를 제거 할)C++을 사용하여 디렉토리와 그 안에있는 모든 파일을 삭제하려면 어떻게해야합니까?

removeDir() 
{ 
     char currentPath[_MAX_PATH]; 
    GetCurrentPath(currentPath); 
    std::string tmp(currentPath); 

    string path = tmp + "\\temp"; 


    std::string command = "del "; 
    std::string Path = path + "1.txt"; 
    cout << Path << endl; 
    system(command.append(Path).c_str()); 
} 

GetCurrentPath(char* buffer) 
{ 
    getcwd(buffer, _MAX_PATH); 
} 

답변

-3

http://www.cplusplus.com/reference/clibrary/cstdio/remove/

int remove (const char * filename); 
#include <stdio.h> 

int main() 
{ 
    if(remove("myfile.txt") != 0) 
    perror("Error deleting file"); 
    else 
    puts("File successfully deleted"); 
    return 0; 
} 
+0

영업 이익은 디렉토리 – fazo

+0

-1에 대한 요청 할 수 있습니다. – MSalters

+1

그가 받아 들였기 때문에 OP와 나는 분명히 비밀스런 언어를 사용합니다 :) – JAM

2
+0

어떻게 보여줄 수 있습니까? 예를 들어 어떤 코드? – fali

+1

@fali boost :: filesystem :: remove_all ("directory"); 자신을 부스트 세계와 연관 짓기 시작하십시오. 바퀴의 재발견은 대부분 영리하지 않습니다. – flumpb

2

당신은 조사해야한다 이런 종류의 일을 훨씬 쉽게 만들어주는 많은 기능을 제공하는 Boost Filesystem Library. 링크 된 페이지의 예제 코드는 달성하려는 내용과 매우 유사한 작업을 수행합니다 (내용을 재귀 적으로 삭제하는 대신 디렉토리를 재귀 적으로 검색합니다). 당신이 싶지 사용 부스트를 할 경우

0

를 묻는 메시지가 무엇을하지 않습니다,이

rm -r "folder name" 
관련 문제