美文网首页
iOS 递归获取某个目录下的所有文件路径

iOS 递归获取某个目录下的所有文件路径

作者: 一只二货 | 来源:发表于2016-08-08 15:59 被阅读148次
    - (NSMutableArray *)filePathArray:(NSString *)directoryPath
    {
        NSMutableArray *mFilePathArray = [NSMutableArray array];
        NSFileManager *fileManager = [NSFileManager defaultManager];
        
        NSArray *array = [fileManager contentsOfDirectoryAtPath:directoryPath error:nil];
        __block BOOL isDir = YES;
        [array enumerateObjectsUsingBlock:^(NSString *obj, NSUInteger idx, BOOL * _Nonnull stop) {
            
            Model_db_List *model = [Model_db_List new];;
            
            NSString *path = [directoryPath stringByAppendingPathComponent:obj];
            if ([fileManager fileExistsAtPath:path isDirectory:&isDir]){
    
                model = [Model_db_List new];
                model.isDir = isDir;
                if (isDir) {
                    model.subPaths = [self filePathArray:path];
                }
            }
            if (model) {
                model.fileName = obj;
                model.path = path;
                [mFilePathArray addObject:model];
            }
        }];
        return mFilePathArray;
    }
    
    
    @interface Model_db_List : NSObject
    
    @property (nonatomic,strong) NSMutableArray <Model_db_List *>*subPaths;
    
    @property (nonatomic, assign) BOOL isDir;
    
    @property (nonatomic,copy) NSString *fileName;
    
    @property (nonatomic,copy) NSString *path;
    
    @end
    
    #import "Model_db_List.h"
    
    @implementation Model_db_List
    
    - (NSString *)description
    {
        return self.fileName;
    }
    
    @end
    

    相关文章

      网友评论

          本文标题:iOS 递归获取某个目录下的所有文件路径

          本文链接:https://www.haomeiwen.com/subject/jlzhsttx.html