2010-02-17 93 views

回答

13

contentsOfDirectoryAtPath:error:返回NSArray。只需發送count到陣列。

+0

感謝您的快速響應,它完美的作品! – Sean

3

contentsOfDirectoryAtPath:error:返回一個NSArray所有內容在一個目錄(文件+文件夾)中。

只得到文件的數量,你可以過濾如下:

NSMutableArray *files = [[NSMutableArray alloc] init]; 
NSArray *itemsInFolder = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:folderpath error:NULL]; 

NSString *itemPath; 
BOOL isDirectory; 
for (NSString *item in itemsInFolder){ 
    itemPath = [NSString stringWithFormat:@"%@/%@", folderpath, item]; 
    [[NSFileManager defaultManager] fileExistsAtPath:item isDirectory:&isDirectory]; 
    if (!isDirectory) { 
     [files addObject:item]; 
    } 
} 

return [files count]; 
0

subpathsOfDirectoryAtPath:error:返回數組與目標目錄的所有路徑包括子目錄。

但正如文檔所言,「您可能不希望在性能關鍵的代碼中使用它」。