沙盒机制 简单数据和复杂数据的数据持久化 (归档反归档)

什么是沙盒机制?
每个应用程序位于文件系统的严格限制部分
每个应用程序只能在为该程序创建的文件系统中读取文件
每个应用程序在iOS系统内部都放在了统一的文件夹目录下面
沙盒的本质就是一个文件夹,名字是随机分配的

数据持久化
什么是数据持久化?
数据的永久存储
为什么要做数据持久化?:存储在内存中的数据,程序关闭,内存释放,数据丢失,这种数据是临时的,用户下次打开应用程序,还要重新联网去刷新数据,无疑增加了用户的负担
数据持久化的本质:数据保存成文件,存储到程序的沙盒中

沙盒默认情况下有三个目录文件夹documents,Library,tmp及应用的App文件,只可在相应的文件夹中进行操作

documents:一般用来存放应用中建立的文件,如数据库文件,或程序中浏览到的文件数据。如果进行备份会将此文件夹中的文件包括其中;

Library:存储应用的默认设置及状态信息;

Library/cache:用来存放缓存文件,此文件夹下数据在应用退出时不会删除。备份时不会包括此文件夹;

tmp:存放即时穿件的临时文件

 

获取沙盒目录路径的方法
NSHomeDirectory-->沙盒主路径
NSDocumentDirectory-->Documents文件夹
NSLibraryDirectory-->Library文件夹
NSCachesDirectory-->Caches文件夹
NSTemporaryDirectory()-->tmp文件夹


#pragma mark--- 获取沙盒下的文件目录
//  1.获取沙盒中Documents这个文件夹的路径
NSString * documentsPath =  [ NSSearchPathForDirectoriesInDomains ( NSDocumentDirectory , NSUserDomainMask , YES ) objectAtIndex : 0 ];
    NSLog(@"%@",documentsPath);
//  第一个参数指定了搜索的路径名称,NSDocumentDirectory表示是在Documents中寻找.NSCacheDirectory的话就是在cache文件中寻找.第二个参数限定了文件的检索范围只在沙盒内部.其意义为用户电脑主目录.也可以修改为网络主机等.最后一个参数决定了是否展开波浪线符号.展开后才是完整路径,这个布尔值一直为YES.
//  该方法返回值为一个数组,iPhone中由于只有一个唯一路径(相对OC而言),所以直接取数组第一个元素即可.

#pragma mark-----对简单对象进行持久化
//  (1)将字符串写入文件
   
NSString * string = @"I love you very much!";
   
//  1.拼接存储路径
   
NSString * strPath = [documentsPath stringByAppendingPathComponent:@"string.txt"];
   
NSLog(@"%@",strPath);
   
//  2.将字符串写入文件
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
沙盒安全机制是一种用于保护计算机系统和应用程序安全的安全措施。沙盒是一个隔离环境,限制了应用程序的访问权限和操作范围,以防止恶意软件或恶意代码对系统的损害。 沙盒安全机制通过将应用程序运行在一个受限制的环境中,将其与操作系统和其他应用程序隔离开来。在沙盒中,应用程序只能访问被授权的资源和功能,而无法访问系统的核心组件或其他应用程序的数据沙盒通常采用以下几种技术来实现安全隔离: 1. 操作系统级别的沙盒:操作系统提供了一些机制,如用户权限和访问控制列表(ACL),来限制应用程序的权限。操作系统可以为每个应用程序创建一个独立的用户账户,并根据权限设置来限制其对系统资源的访问。 2. 虚拟化技术:虚拟化技术可以将应用程序运行在一个虚拟的操作系统实例中,与物理主机和其他虚拟机隔离开来。这样可以防止应用程序对底层系统的干扰,并提供额外的安全层。 3. 应用程序级别的沙盒:一些应用程序本身提供了沙盒环境,用于隔离其自身和其他应用程序。这些沙盒可以限制应用程序的文件访问、网络连接、系统调用等操作,以防止恶意行为的发生。 沙盒安全机制的优点是可以有效地限制应用程序的权限,降低系统受到恶意软件攻击的风险。然而,它也有一些局限性,如无法完全防止零日漏洞的利用和高级持久性威胁(APT)的攻击。因此,沙盒通常与其他安全措施结合使用,以提供更全面的安全保护。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值