我想获取一个文件夹中的所有图像名称。
我想要做的是,我将所有图像放在名为“Files”的文件夹中
现在可以将所有图像名称添加到数组中,所以我不需要手动将所有图像名称写入数组,还是有其他简单方法可以做到这一点?
答案 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]];