获取资源文件夹中子目录的路径
Posted
技术标签:
【中文标题】获取资源文件夹中子目录的路径【英文标题】:Get Path to Subdirectory in Resources Folder 【发布时间】:2011-09-07 13:27:47 【问题描述】:我正在尝试在资源文件夹的子目录中获取所有 png 文件的数组。 在我的应用程序资源文件夹中,我创建了一个名为“图像”的文件夹。此文件夹包含我需要显示的所有 png 文件。
这是我尝试获取路径的方式:
NSString *imagepath = [NSString stringWithFormat:@"%@/%@",[[NSBundle mainBundle] bundlePath],@"images/"];
NSLog(@"Path to Images: %@", imagepath);
NSArray * paths = [NSBundle pathsForResourcesOfType: @"png" inDirectory:imagepath];
NSMutableArray * allImageNames = [[NSMutableArray alloc] init];
for ( NSString * path in paths )
if ( [[path lastPathComponent] hasPrefix: @"AQ"] )
continue;
[allImageNames addObject: [path lastPathComponent]];
这样我得到了一个像…/appname.app/images这样的路径
但如果我尝试那样做,数组总是空的。 我做错了什么?
问候, 扎拉克
【问题讨论】:
你的图片名称是什么?他们喜欢image.AQ
吗?
图片名称类似于“banana_icon.png”。但我使用 AQGridView 来创建所有文件的图库。
那你为什么要查看[[path lastPathComponent] hasPrefix: @"AQ"]
?
您确定这些图像位于一个单独的文件夹中,而不仅仅是 Xcode 项目中资源中的一个“组”吗?
【参考方案1】:
刚刚解决了。
NSBundle *mainBundle = [NSBundle mainBundle];
NSArray *pngs = [mainBundle pathsForResourcesOfType:@".png"
inDirectory:@"random pictures"];
NSLog(@"pngs in my dir:%@", pngs);
目录结构:“资源/随机图片”。
这可行,但是,当您将文件添加到“资源”时,您需要选中“为任何添加的文件夹创建文件夹引用”,而不是“为任何添加的文件夹创建组”。
干杯!
【讨论】:
通过使用另一个解决方案解决了这个问题,但我会记住这一点并在另一个项目中尝试一下。长话短说,你得到接受。 ;) 感谢您的回复。 对我不起作用,我有一个文件夹 In-Work with pdf 文件,我正在尝试使用以下方法访问文件: NSString *inWorkPath = [[[NSBundle mainBundle]resourcePath]stringByAppendingPathComponent:@ "工作中"];NSArray *resContents = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:inWorkPath 错误:&error];并且 resContents 返回 nil 您在将文件夹添加到项目时是否选中了“创建文件夹引用”? @EshwarChaitanya @codrut 哎呀,这是我的错误。就像你说的,我在复制资源时没有检查创建文件夹引用。以上是关于获取资源文件夹中子目录的路径的主要内容,如果未能解决你的问题,请参考以下文章