ios - 获取文档目录中特定文件夹的内容

标签 ios objective-c cocoa-touch

我正在尝试读取文档目录中仅包含 png 的 /Documents/ApplianceImagesFolder/的特定文件夹的内容

目前我只能从 documents 文件夹中获取我的所有图像,我如何才能只定位 ApplianceImagesFolder 的内容?

 //gets all png form documents folder
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentsPath = [paths objectAtIndex:0];
    NSArray *dirContents = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:documentsPath error:nil];
    fileList=[[NSMutableArray alloc]init];
    for (NSString *dir in dirContents) {
        if ([dir hasSuffix:@".png"]) {
            NSRange range = [dir rangeOfString:@"."];
            NSString *name = [dir substringToIndex:range.location];
            if (![name isEqualToString:@""]) {

                [fileList addObject:name];
            }
        }
    } 
    NSLog(@"document folder content list %@ ",fileList);

最佳答案

构建所需的路径:

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsPath = [paths objectAtIndex:0];
NSString *folderPath = [documentsPath stringByAppendingPathComponent:@"ApplianceImagesFolder"];
NSArray *dirContents = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:folderPath error:nil];

还有一个更好的方法来查找 png 文件:

fileList=[[NSMutableArray alloc]init];
for (NSString *filename in dirContents) {
    NSString *fileExt = [filename pathExtension];
    if ([fileExt isEqualToString:@"png"]) {
        [fileList addObject:filename];
    }
} 
NSLog(@"document folder content list %@ ",fileList);

关于ios - 获取文档目录中特定文件夹的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21802937/

相关文章:

iphone - 在 Objective C 中检查 NSString 的 NOT <null> 值的条件

cocoa-touch - 为什么我需要在我正在观察的对象被释放之前删除一个通知观察者?

iphone - 在 iPhone 中显示带有文本框的警报 View

iphone - 强制 UIView/UIVIewController 方向

ios - 结合 convert Just 到 AnyPublisher

objective-c - 核心数据: How to handle new versions?

objective-c - 如何在不影响MKMapView性能的情况下放置MKAnnotation

ios - CGPathCreateMutableCopy/BezierPath 不填充原始内容

ios - UITabBarController 的子 UIViewControllers 重叠状态栏

ios - iOS 的 Facebook SDK 共享对话框错误