2012-12-04 75 views
3

我的文檔目錄中有一些文件夾和子文件夾我如何獲得目錄和子目錄中的文件而不是文件夾中的文件只是文件。獲取文檔目錄中的項目數組iOS

這裏是我的代碼,到目前爲止,它的工作,如果沒有文件夾和子文件夾存在

//getting all the files on documents folder in an array. 
    NSError * error; 
    NSArray * directoryContents = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:documentsDirectory error:&error]; 

回答

1
NSFileManager *fileManager = [NSFileManager defaultManager]; 
NSDirectoryEnumerator *enumerator = [fileManager enumeratorAtPath:documentsDirectory]; 
NSMutableArray *files = [NSMutableArray array]; 
BOOL isDirectory; 
NSString *path; 
while (path = [enumerator nextObject]) { 
    if ([fileManager fileExistsAtPath:path isDirectory:&isDirectory] && !isDirectory) { 
     [files addObject:path]; 
    } 
} 
+0

或改變條件:'[[enumerator fileAttributes] objectForKey:NSFileType] == NSFileTypeRegular' – Guillaume

3
+0

是的,我看到,我只想要文件,我正在尋找一個遞歸的方式做到這一點。 – zaabalonso

+0

如果你看第二鏈接:'for(item in contents){if {[item pathExtension] isEqualToString:extension] { [matches addObject:item]; } }''你總是可以得到所有文件的路徑擴展..用這個你可以配置你的數組.. – DShah

相關問題