【问题标题】:Is there a method in Objective-C to recursively create directories from a string?Objective-C 中是否有一种方法可以从字符串递归创建目录?
【发布时间】:2009-07-28 01:58:29
【问题描述】:

我正在尝试使用从服务器下载的图像写入 iPhone 应用程序的缓存文件夹。我的计划是将图像保存在“site.com/path/to/image.jpg”中,因为像这样镜像服务器文件夹结构使得重复名称成为不可能,而且这似乎是正确的做法。不幸的是,似乎我必须在编写文件之前自己创建文件夹。 Objective-C 中是否有一个方法可以调用,如果给定“/Users/Me/a/b/c”(不,那不是有效的 iPhone 路径,只是一个示例)将实现 /Users/Me 存在,然后创建a,然后在a下创建b,以此类推直到结束?

我可以自己写,但我喜欢尽可能使用内置函数。我在这里找不到任何关于此的内容。

【问题讨论】:

    标签: iphone objective-c file-io


    【解决方案1】:

    试试这个:

    NSString * path = @"/Users/Me/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z";
    NSError * error = nil;
    BOOL success = [[NSFileManager defaultManager] createDirectoryAtPath:path 
                                             withIntermediateDirectories:YES 
                                                              attributes:nil 
                                                                   error:&error];
    if (!success || error) {
      NSLog(@"Error! %@", error);
    } else {
      NSLog(@"Success!");
    }
    

    【讨论】:

    • @zekel 最近我注意到!success 是正确的检查。
    • 这就是我的想法,当方法成功时error 不保证为零。
    猜你喜欢
    • 2016-04-29
    • 2020-05-09
    • 2016-12-12
    • 1970-01-01
    • 2020-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多