2012-02-04 2 views
0

я могу получить список файлов на пути, но я не могу удалить все каталоги из спискаидентификации реж из списка файлов

fileList = [[myFileManager contentsOfDirectoryAtPath:[NSString 
stringWithFormat:@"%@/%@",documentsDir, appDelegate.user_name] error:&theError] 
retain]; 



NSLog(@"FileList: %@", fileList); 

for (int i =0; i< [fileList count]; i++) 
{ 
    NSString *fileName = [fileList objectAtIndex:i]; 

    if ([fileName hasSuffix:@"dir"]) 
    { 
     NSLog(@"dir found"); 
     [fileList removeObjectAtIndex:i]; 
     i--; 
    } 
} 

Я, очевидно, недоразумение, как выполнить это, может кто-нибудь посоветовать мне, как это сделать?

ответ

0
for (NSString *path in fileList) { 

    BOOL isDir = NO; 
    if ([[NSFileManager defaultManager] fileExistsAtPath:path isDirectory:&isDir]) { 

    if(isDir){ 
     //... 
    } 
    } 
} 

из doc:

- (BOOL)fileExistsAtPath:(NSString *)path isDirectory:(BOOL *)isDirectory 

Параметры
путь Путь к файлу или каталогу. Если путь начинается с тильды (~), он должен быть сначала расширен с помощью stringByExpandingTildeInPath или , этот метод вернет NO.

isDirectory После возвращения, содержит ДА, если путь является каталогом или если конечный элемент пути является символической ссылкой, которая указывает на каталог, в противном случае содержит NO. Если путь не существует, возвращаемое значение равно undefined. Передайте NULL, если вам не нужна эта информация.

Смежные вопросы