【问题标题】:How to recreat the documents folder if it was deleted in ios6?如果在 ios 6 中删除了文档文件夹,如何重新创建它?
【发布时间】:2014-05-05 13:26:37
【问题描述】:

全部:

在我开发的应用程序中,当用户执行某些操作时,我错误地删除了文档文件夹。

但我的应用在 App Store 中。如何在下一个更新版本中重现文档文件夹?

更新到下一个版本时,文档文件夹会被ios自动创建吗? 或者我必须在代码中重新创建文件夹?可以用代码创建documents文件夹吗?

===============================================

大家好:

感谢您的帮助。我发现即使我删除了应用程序的文档文件夹,当将应用程序更新到新版本时,iOS会自动创建该文件夹。但是如果在应用程序的根文件夹中,有一个名为“documents”的文件,不会自动创建documents文件夹(但只有在越狱的手机中,您可以在应用程序的根目录下创建文件)。所以这可能是iOS的一个错误。

【问题讨论】:

    标签: ios updates documents


    【解决方案1】:

    当更新到下一个版本时,文档文件夹会不会 ios自动创建的?或者我必须在代码中重新创建文件夹? 可以用代码创建documents文件夹吗?

    不,它不会自动创建。你应该创建这个文件夹:

    - (void) createFolderDocumentIfNotExisted
    {
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *basePath = ([paths count] > 0) ? [paths objectAtIndex:0] : nil;
    NSFileManager *fm = [NSFileManager defaultManager];
    if(![fm fileExistsAtPath:basePath]){
        NSError *err;
        [fm createDirectoryAtPath:basePath withIntermediateDirectories:NO attributes:nil error:&err];
    }
    }
    

    【讨论】:

    • 谢谢,我使用代码正确创建了documents文件夹。但是iOS在大多数情况下更新到新版本时会创建documents文件夹。
    【解决方案2】:

    将参数 2 设置为 YES。

     - (BOOL)createDirectoryAtURL:(NSURL *)url 
    withIntermediateDirectories:(BOOL)createIntermediates 
    attributes:(NSDictionary *)attributes error:(NSError **)error NS_AVAILABLE(10_7, 5_0);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-08-04
      • 2010-11-20
      • 2016-09-02
      • 1970-01-01
      • 2022-01-09
      • 2014-11-16
      • 2014-09-26
      • 1970-01-01
      相关资源
      最近更新 更多