如何获取所有图像名称?

时间:2015-02-26 10:24:57

标签: ios objective-c iphone

我想获取一个文件夹中的所有图像名称。

我想要做的是,我将所有图像放在名为“Files”的文件夹中

现在可以将所有图像名称添加到数组中,所以我不需要手动将所有图像名称写入数组,还是有其他简单方法可以做到这一点?

3 个答案:

答案 0 :(得分:1)

试试这个

NSFileManager *filemanager = [NSFileManager defaultManager];
NSArray *filelist= [filemanager contentsOfDirectoryAtPath:filePath error:&error];

此处filePath是“Files”文件夹的路径,上述方法返回给定目录中存在的文件名数组。

答案 1 :(得分:0)

除了赛义夫的答案,你可以用谓词过滤结果

NSPredicate *filter = [NSPredicate predicateWithFormat:@"self endswith '.jpg'"];
NSArray *jpgImages = [filelist filteredArrayUsingPredicate:filter];

答案 2 :(得分:0)

NSFileManager *filemgr;
NSArray *dirlist;

path= [NSString stringWithFormat:@"%@/%@",[[NSBundle mainBundle] bundlePath],@"Folder_Name"];

    filemgr =[NSFileManager defaultManager];

dirlist = [filemgr contentsOfDirectoryAtPath:path error:NULL];

NSString *directory =[NSString stringWithFormat:@"%@/%@",path,[dirlist objectAtIndex: index]] ;

NSLog(@"Path:%@",directory);
NSArray *temp = [filemgr contentsOfDirectoryAtPath:directory error:NULL];

注意:在项目中添加图片文件夹时,请记得选择"创建文件夹参考"选项。

使用此整个图像路径:

    imagesUrls = [[NSMutableArray alloc]init];
    for(int j =0; j< [temp count]; j++) 
    {
        [imagesUrls addObject:[NSString stringWithFormat:@"%@/%@",directory,[temp objectAtIndex:j]]];

    }

最后使用imagesUrls数组来获取图像的路径。

imageView.image =[UIImage imageWithContentsOfFile:[imagesUrls objectAtIndex:i]];