按照创建时间升序排列沙盒里的文件

来源:互联网 发布:如何专卖自己的域名 编辑:程序博客网 时间:2024/05/16 16:17

具体实现

+ (NSArray *)sortSandboxFilesInAscendingOrderOfCreationTime:(NSArray *)fileArray                                       videoMetadataDirPath:(NSString *)videoMetadataDirPath{        NSArray *sortedPaths = [fileArray sortedArrayUsingComparator:^(NSString * firstPath, NSString* secondPath) {        //获取相邻两个文件的完整路径        NSString *firstFileUrl = [videoMetadataDirPath stringByAppendingPathComponent:firstPath];        NSString *secondFileUrl = [videoMetadataDirPath stringByAppendingPathComponent:secondPath];                //获取相邻两个文件的文件信息        NSDictionary *firstFileInfo = [[NSFileManager defaultManager] attributesOfItemAtPath:firstFileUrl error:nil];        NSDictionary *secondFileInfo = [[NSFileManager defaultManager] attributesOfItemAtPath:secondFileUrl error:nil];                       //获取相邻两个文件的创建时间        id firstFileCreateDate = [firstFileInfo objectForKey:NSFileCreationDate];        id secondFileCreateDate = [secondFileInfo objectForKey:NSFileCreationDate];        //升序        return [firstFileCreateDate compare:secondFileCreateDate];                }];    return sortedPaths;}

调用:

    NSFileManager *fileManager = [NSFileManager defaultManager];    NSArray *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);    NSString *documentDir = [documentPaths objectAtIndex:0];    NSString *videoMetadataDir = [documentDir stringByAppendingString:@"/videoMetadata"];    NSError *error = nil;    NSArray *metadataXMLList = [[NSArray alloc] init];    metadataXMLList = [fileManager contentsOfDirectoryAtPath:videoMetadataDir error:&error];    if (metadataXMLList.count == 0) {        log4cplus_error("MetadataLog", "%s:Video metadata List is empty",__func__);        return;    }    // 升序排列XML数组      NSArray *sortXMLList = [FileOperatorTool sortSandboxFilesInAscendingOrderOfCreationTime:metadataXMLList videoMetadataDirPath:videoMetadataDir];



阅读全文
0 0
原创粉丝点击