iOS writeToFile 保存文件到沙盒某目录失败的解决方案

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS writeToFile 保存文件到沙盒某目录失败的解决方案相关的知识,希望对你有一定的参考价值。

参考技术A 最近想在document/ABC路径下保存一下图片,结果保存失败。于是新增一个路径是否存在的判断,如果ABC不存在则,创建。完美解决了问题。

    if (![[NSFileManager defaultManager] fileExistsAtPath:self.fileBasePath])

        [[NSFileManager defaultManager] createDirectoryAtPath:self.fileBasePath withIntermediateDirectories:YES attributes:nil error:nil];

   

OC基本数据存储方式

/** ,数据存储

     常用方式(5)

     1,XML属性列表 -- 保存在Doucuments文件夹

     2,偏好设置(NSUserDefault)-- Library/Preference

     需要配合writetoFile来配合使用,保存到沙盒

     3,归档(NSKeyedArchiver) -- 实现coding协议

     4,sqlite --使用sqlite语法操作数据库

     5,Core Data -- 由系统生成数据库

     

     Documents : 保存应用运行时生成的需要持久化的数据,itunse同步时会备份该项目 (手动保存)

     

     Library/Caches : 需要持久化的缓存数据,itunse同步时不会备份该项目

     Library/Cookies :

     Library/Perference : 保存应用程序的偏好设置,itunse同步时会备份该项目

     

     Tmp : 临时文件夹,应用退出后清空该文件夹

     *

     */

NSString *documentPath;//全局变量

//获取路径

documentPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) firstObject];

 

 

//MARK:属性列表

- (void)dataPlist{

    //array,dictionary,string,number,boolean,data,date

    NSArray *temArray = @[@"i",@"love",@"you",@"520"];

    NSDictionary *tempDictionary = @{@"string":@"hzt",

                                     @"number":@520,

                                     @"object":temArray};

    NSString *savePath = [documentPath stringByAppendingPathComponent:@"test.plist"];

    [tempDictionary writeToFile:savePath atomically:YES];

    //读取

    NSDictionary *readDic = [NSDictionary dictionaryWithContentsOfFile:savePath];

    NSLog(@"%@",readDic);

}

 

//MARK:偏好设置

- (void)dataUserDefault{

    NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];

    [userDefault setObject:@"i love you " forKey:@"string"];

    [userDefault setBool:YES forKey:@"BOOL"];

    [userDefault setInteger:520 forKey:@"Integer"];

}

 

 

 

 

 

以上是关于iOS writeToFile 保存文件到沙盒某目录失败的解决方案的主要内容,如果未能解决你的问题,请参考以下文章

如何录制音频并将其保存到沙盒?

OC基本数据存储方式

iOS开发系列--数据存取

iOS - 数据存储方式(本地化)

iOS 文件路径及数据保存

IOS把图片缓存到本地的几种方法