2011-05-09 6 views
1

나는/Documents/Images 폴더가 있는데,이 폴더에는 이미지가있는 해당 폴더에서 몇 년 후 이름이 지정된 다른 여러 폴더가 있습니다. 이미지 폴더 (폴더 및이 폴더의 이미지 포함)에서 모든 것을 삭제하고 싶습니다.특정 폴더에서 모든 파일 및 폴더 삭제

나는 몇 가지 코드 조각을 시도했지만 아무도 폴더

을 삭제할 내 방법 :

- (void) clearCache:(NSString *) folderName{ 
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
NSString *documentsDirectoryPath = [paths objectAtIndex:0]; 
NSFileManager *fm = [NSFileManager defaultManager]; 
NSString *directory = [documentsDirectoryPath stringByAppendingPathComponent:folderName]; 
NSLog(@"Removing items at path: %@",directory); 
    NSError *error = nil; 
BOOL succes = [fm removeItemAtPath:directory error:&error]; 

/*for (NSString *file in [fm contentsOfDirectoryAtPath:directory error:&error]) { 
    //BOOL success = [fm removeItemAtPath:[NSString stringWithFormat:@"%@%@", directory, file] error:&error]; 
    BOOL success = [fm removeItemAtPath:[directory stringByAppendingPathComponent:file] error:&error]; 
    if (!success || error) { 
     // it failed. 
    } 
}*/ 

}

+0

가능한 중복 [응용 프로그램에 지정된 디렉토리에있는 모든 파일을 삭제하는 방법?] (http://stackoverflow.com/questions/2226600/how-to-delete-all-files-in -a-specified-directory-on-the-app) – Leena

답변

8
NSFileManager *fm = [NSFileManager defaultManager]; 
NSString *directory = [[self documentsDirectory] stringByAppendingPathComponent:@"urDirectory/"]; 
NSError *error = nil; 
for (NSString *file in [fm contentsOfDirectoryAtPath:directory error:&error]) { 
    BOOL success = [fm removeItemAtPath:[NSString stringWithFormat:@"%@%@", directory, file] error:&error]; 
    if (!success || error) { 
     // it failed. 
    } 
} 

희망이 도움이

+1

'documentsDirectory'를'NSDocumentDirectory'로 만들려고 했습니까? –

관련 문제