您的位置:首页 > 其它

获取本地文件并显示在tableView中,如同QQ中的文件展示,但是还不能查看内容

2017-01-09 18:30 288 查看
NSFileManager *fileManager = [NSFileManager defaultManager];

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

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

    NSString *docDir = [paths objectAtIndex:0];

//    NSLog(@"%@",docDir);

    NSError *error = nil;

    

    _dataFileArray = [[NSArray alloc] init];

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

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

    

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

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

    BOOL isDir = NO;

    //在上面那段程序中获得的_dataFileArray中列出文件夹名

    for (NSString *file in _dataFileArray) {

        NSString *path = [docDir stringByAppendingPathComponent:file];

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

        if (isDir) {

            [dirArray addObject:file];

        }

        isDir = NO;
    }

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView

{

    return 1;

}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section

{

    return _dataFileArray.count;

}

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath

{

    return 80;

}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

{

    TaskFileTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"taskFileCell" forIndexPath:indexPath];

    cell.titleLabel.text = [_dataFileArray objectAtIndex:indexPath.row];

    NSArray *strDivision = [cell.titleLabel.text componentsSeparatedByString:@"."];

    NSString *strIntercept = [strDivision lastObject];

    if ([strIntercept isEqualToString:@"plist"]) {

        cell.fileImage.image = [UIImage imageNamed:@"plista.png"];

    }

    if ([strIntercept isEqualToString:@"doc"]) {

        cell.fileImage.image = [UIImage imageNamed:@"doc.png"];

    }

    if ([strIntercept isEqualToString:@"html"]) {

        cell.fileImage.image = [UIImage imageNamed:@"htmlaa.png"];

    }

    if ([strIntercept isEqualToString:@"ppt"]) {

        cell.fileImage.image = [UIImage imageNamed:@"ppt.png"];

    }

    if ([strIntercept isEqualToString:@"rar"]) {

        cell.fileImage.image = [UIImage imageNamed:@"rara.png"];

    }

    if ([strIntercept isEqua
4000
lToString:@"zip"]) {

        cell.fileImage.image = [UIImage imageNamed:@"zipa"];

    }

    if ([strIntercept isEqualToString:@"xls"]) {

        cell.fileImage.image = [UIImage imageNamed:@"xlsa"];

    }

    if ([strIntercept isEqualToString:@"txt"]) {

        cell.fileImage.image = [UIImage imageNamed:@"txta.png"];

    }

    if ([strIntercept isEqualToString:@"png"] || [strIntercept isEqualToString:@"jpg"]) {

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

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

        NSString *docDir = [paths objectAtIndex:0];

        NSString *strRoute = [NSString stringWithFormat:@"%@/%@",docDir,cell.titleLabel.text];

        cell.fileImage.image = [UIImage imageNamed:strRoute];

    }

    

    return cell;

}

注:本文版权归作者所有,转载请注明出处

http://www.jianshu.com/p/a26cf0e316fe
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐