数据持久化之沙盒

沙盒:本质上就是一个文件夹 iOS平台下针对于每一个安装的应用在本地生成的文件夹(名字随机产生) 应用之间不能互相访问对方沙盒中的内容
  Documents:存放数据持久化的文件 向长久存储的数据都放在该文件夹下 但是不能放过多的内容 放的文件过多的话 上线会被拒
  Library:
   Library/Preference:存放用户的偏好设置 比如用户名和密码 是否第一次启动
   Library/Caches:缓存文件夹 下载的视频 音频 小说 图片等
  tmp:临时文件夹 存放临时文件 比如:下载的zip(压缩包)

  系统生成的文件夹我们是没有删除的权限 (自己创建的文件夹可以删除)

@implementation AppDelegate
- (void)dealloc{
    [_window release];
    [super dealloc];
}

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {


    //1.获取沙河文件夹的路径
    NSString *homePath = NSHomeDirectory();
    NSLog(@"%@", homePath);

    //2.应用程序包的路径 包中含有应用程序加载时所需的所有资源(上传到AppStore的包)
    NSString *bundlePath = [[NSBundle mainBundle] bundlePath];
    NSLog(@"bundlePath%@", bundlePath);

    //3.获取Documents文件夹
    //第一个参数:查找的文件夹
    //第二个参数:查找的范围 用户域中查找
    //第三个参数:是否显示详细的路径(YES:显示详细路径)
    //该方法之前是用于OS X平台的 对于OS X平台下 可以同时有多个用户 所以获取的是所有用户的文件夹路径 而iOS平台下 用户只有一个 所以获取的路径只有一个
    NSString *documentsPath =  [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) firstObject];
    NSLog(@"%@", documentsPath);

    //4.获取沙盒中Library文件夹路径
    NSString *libraryPath = [NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES) firstObject];
    //5获取沙盒中tmp文件夹路径
    NSString *tmpPath = NSTemporaryDirectory();
    NSLog(@"%@", tmpPath);

    //6.获取沙盒中Library下的Caches(缓存)文件夹路径
    NSString *cachesPath = [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) firstObject];

    //7.获取包中资源的路径
    NSString *filePath = [[NSBundle mainBundle] pathForResource:@"资源名" ofType:@"资源类型"];

    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];//直接操作的是Preference文件夹
    [defaults setObject:@"user" forKey:@"userName"];//存储用户名
    [defaults setObject:@"password" forKey:@"passwok"];//存储密码
    [defaults setBool:YES forKey:@"FirstLaunch"];//存储第一次启动
    [defaults synchronize];//立即同步 立即将数据写入文件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值