我在沙河路径下遇到的坑

开发中有时会遇到,需要往本地沙河路径下写入一些文件或者创建文件夹缓存一些pdf或者word等

  • 也许你会遇到这样的问题,明明在模拟器下运行没有任何问题,但是到了真机上却出现了bug,比如我们需要创建的文件夹失败等.
    • 下面的代码就是模拟器运行正常,但是真机却创建失败的代码
NSFileManager *fileManager = [NSFileManager defaultManager];
    NSString *directoryPath = [NSHomeDirectory() stringByAppendingPathComponent:@"FileTemp"];
    NSError *error = nil;
    if ([fileManager createDirectoryAtPath:directoryPath withIntermediateDirectories:YES attributes:nil error:&error] != YES) {
        //创建失败
        [fileManager createDirectoryAtPath:directoryPath withIntermediateDirectories:YES attributes:nil error:&error];
    }else {
        //创建成功
    }
  • 解决该问题的正确写法如下
NSString *pathDocuments = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)objectAtIndex:0];
NSString *KPath = [NSString stringWithFormat:@"%@/FileTemp",pathDocuments];
NSFileManager *fileManager = [[NSFileManager alloc]init];
    if (![[NSFileManager defaultManager]fileExistsAtPath:KPath]) {
        
        [fileManager createDirectoryAtPath:KPath withIntermediateDirectories:YES attributes:nil error:nil];
        
    }else{
        NSLog(@"有这个文件了");
    }

ps:如有不足和更高的见解欢迎评论或私信😆

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容