美文网首页Object-CiOS开发Tools
iOS本地文件列表及文件阅览

iOS本地文件列表及文件阅览

作者: xcp123 | 来源:发表于2017-01-14 10:04 被阅读204次

    核心代码如下:

    支持用其他软件查看本文件,用tableView获取到文件列表点击某个文件是实现预览文件的效果,如同QQ上收到的文件一样的。

    NSFileManager *fileManager = [NSFileManager defaultManager];

    //在这里获取应用程序Documents文件夹里的文件及文件夹列表

    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);

    docDirs = [paths objectAtIndex:0];

    NSError *error = nil;

    //_dataFileArray是包含有该文件夹下所有文件的文件名及文件夹名的数组

    _dataFileArray = [fileManager contentsOfDirectoryAtPath:docDirs error:&error];

    fileList = [NSMutableArray array];

    XCPFileObject *fileObj;

    for (NSString *name in _dataFileArray) {

    fileObj = [[XCPFileObject alloc] init];

    fileObj.fileName = name;

    NSDictionary *fileAttributes = [fileManager attributesOfItemAtPath:[docDirs stringByAppendingPathComponent:name] error:nil];

    fileObj.filemTime = [fileAttributes objectForKey:@"NSFileCreationDate"];

    fileObj.fileSize = [[fileAttributes objectForKey:@"NSFileSize"] integerValue];

    fileObj.fileOwner = [fileAttributes objectForKey:@"NSFileGroupOwnerAccountName"];

    [fileList addObject:fileObj];

    }

    //列出给定一个文件夹里的所有子文件夹名

    NSMutableArray *dirArray = [[NSMutableArray alloc] init];

    BOOL isDir = NO;

    for (NSString *file in _dataFileArray) {

    NSString *path = [docDirs stringByAppendingPathComponent:file];

    [fileManager fileExistsAtPath:path isDirectory:(&isDir)];

    if (isDir) {

    [dirArray addObject:file];

    }

    isDir = NO;

    }

    封装好的Dome:http://download.csdn.net/detail/xcp_123/9735844 

    相关文章

      网友评论

        本文标题:iOS本地文件列表及文件阅览

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