如何从我的 iPhone App 文档目录中选择所有图像

Posted

技术标签:

【中文标题】如何从我的 iPhone App 文档目录中选择所有图像【英文标题】:How to select all the images from my iPhone App document directory 【发布时间】:2013-01-17 12:08:58 【问题描述】:

我有一个包含一堆图像的文件夹。我想将所有图像的名称添加到数组中。这些图像位于我在应用程序上的文档中的一个文件夹中。见屏幕截图。

我知道如果我想获得其中一张图片,我会使用以下代码。

NSArray   *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString  *documentsDirectory = [paths objectAtIndex:0];
NSString  *filePath = [NSString stringWithFormat:@"%@/POIs/%@", documentsDirectory,image];

是否可以选择文件夹中的所有文件?如果是,是否也可以选择文件的名称并将它们添加到数组中?

谢谢

【问题讨论】:

【参考方案1】:

获取POS文件夹的文件路径:

NSString  *filePath = [NSString stringWithFormat:@"%@/POIs", documentsDirectory];

然后做:

NSArray *files = [fileManager contentsOfDirectoryAtPath:filePath 
                                                  error:nil];

代码未测试

【讨论】:

【参考方案2】:

试试下面的:

NSArray *path = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    library = [path objectAtIndex:0];
    fileArray = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:library error:nil];
    NSLog(@"fileArray...%@",fileArray);



 for(int i = 0;i<fileArray.count;i++)
    
        id arrayElement = [fileArray  objectAtIndex:i];
     if ([arrayElement rangeOfString:@".png"].location !=NSNotFound)
        

        [imagelist addObject:arrayElement];
        arrayToLoad = [[NSMutableArray alloc]initWithArray:imagelist copyItems:TRUE];
        

【讨论】:

【参考方案3】:

你可以这样做:

NSArray *directoryContent = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)lastObject] error:NULL];

设置图片:

[imgView setImage:[UIImage imageWithContentsOfFile:"Your complete path"]];

【讨论】:

以上是关于如何从我的 iPhone App 文档目录中选择所有图像的主要内容,如果未能解决你的问题,请参考以下文章

需要在app的Documents文件夹中为图像加载延迟表图像

如何通过iphone中的sqlite获取路径来显示文档目录中保存的图像

iPhone 如何展示我的文档目录中的照片?

如何在 iPhone 应用程序中以编程方式传真文档? [关闭]

应用程序的 Documents 文件夹中的图像需要延迟表图像加载

如何从我的应用程序启动 iPhone 设置应用程序?