沙盒机制,写入读取,归解档入门
来源:互联网 发布:java邮件功能 编辑:程序博客网 时间:2024/06/16 14:41
——————————————沙盒
沙盒 :每个iOS应用程序都会为自己创建一个文件系统目录(文件夹),这个独立,封闭,安全的空间,叫做沙盒
注意: 1:每一个应用程序都会拥有一个应用程序沙盒
手动自动存入东西
——————————————文件夹
文件夹
- Documents :
1:存入一些永远不被删除的文件(不会被系统主动删除),itunes备份时,同时也会备份Documents文件(条件:尽量不在Documents放入音频视频等太大的东西,只放一些重要文件,以免审核被拒) 注:可以存,有方法让什么 - Library :
1Caches : 存储缓存的文件夹 当用户对某一个URL做请求操作的时候,这个URL里面的东西会保存在主机里面的某个位置 .Cookie 和Session .(itunes不会备份此目录,文件不会再应用退出时删除,一般存放比较大,不是特别重要的资源)
- tmp:保存应用运行时所需的临时数据,使用完毕后会将相应的文件从该目录删除.应用没有运行时或者手机重启时,系统也有可能会清除该目录下的文件,iTunes 不会同步该目录
获取文件夹方法
-
第一种 : 通过该NSSeach搜索文件夹得地址,能获取Documents 和Library 内部文件夹地址,但是不能获取tmp文件夹得地址,其他的都可以获取到.
-
第二种 :首先获取沙盒主路径的地址,然后拼接上想要去的文件夹的地址.
——————————————数据本地化
-
读取
——————————————NSData
- 写入
- 读取数据
——————————————归解档
#import
// 如果一个对象向直接写入本地,那么这个对象需要遵守NSCoding协议
@interface Person: NSObject<</span>NSCoding>
@property(nonatomic,copy)NSString*name;
@property(nonatomic,copy)NSString*gender;
@property(nonatomic,assign)NSUIntegerage;
//nonatomicassign copy atomic weak strong readonly readwrite writeonly nonnullnullable retain unsafe_unretained
//_+属性名命名的成员变量
//
@property(nonatomic,copy)NSString*name;
@property(nonatomic,copy)NSString*gender;
@property(nonatomic,assign)NSUInteger
//_+属性名命名的成员变量
//
@end
#import "Person.h"
@implementationPerson
//归档
//在归档和解档的时候,要把所有的属性都进行归解档
-(void)encodeWithCoder:(NSCoder*)aCoder{
[aCoder encodeObject:self.nameforKey:@"name"];
[aCoder encodeObject:self.genderforKey:@"gender"];
[aCoder encodeInteger:self.ageforKey:@"age"];
}
//解档
-(instancetype)initWithCoder:(NSCoder*)aDecoder{
if (self=[superinit]){
self.name=[aDecoder decodeObjectForKey:@"name"];
self.gender=[aDecoder decodeObjectForKey:@"gender"];
self.age=[aDecoder decodeIntegerForKey:@"age"];
}
returnself;
}
@implementationPerson
//归档
//在归档和解档的时候,要把所有的属性都进行归解档
-(void)encodeWithCoder:(NSCoder*)aCoder{
}
//解档
-(instancetype)initWithCoder:(NSCoder*)aDecoder{
}
@end
#import "ViewController.h"
#import "Person.h"
@interfaceViewController()
@end
@implementationViewController
- (void)viewDidLoad{
[ superviewDidLoad];
#import "Person.h"
@interfaceViewController()
@end
@implementationViewController
- (void)viewDidLoad{
总结
- 简单对象写入文件过程:
- 创建字符串获取存储文件的文件夹路径
- 创建需要存储的数据
- 创建字符串通过拼接创建并获得存储文件的路径
- 写入 writeToFile
- 读取:
通过路径读取数据,使用stringWithContentsOfFile 方法 - 归档:
- 创建对象 (并设置属性)
- 遵循NSCoding协议,并实现方法
- 创建实例对象
- 创建NSData用来存储对象并初始化归档工具
- 创建归档工具
- 归档
- 结束归档
- 获取,拼接沙盒文件路径
- 写入
- 解档
- 获取沙盒文件路径
- 创建NSData,并接收本地数据
- 创建解档工具,通过NSData
- 创建对象,并接收解档结果
- 结束解档
0 0
- 沙盒机制,写入读取,归解档入门
- iOS沙盒机制 、对象写入及读取
- OC沙盒桌面读取写入
- CSharp文件读取与写入入门图解
- UI一揽子计划 18 (沙盒机制、简单对象写入文件、NSFileMange、复杂对象写入文件)
- 笔记-ios-沙盒机制,简单写入文件
- 沙盒机制、NSBundle、简单对象写入文件
- 47.沙盒机制(简单对象的写入)
- XML入门之二:Jdom2的写入和读取操作
- XML入门之三:DOM4J的写入和读取操作
- UWP入门(十)--创建、写入和读取文件
- pandas入门——文件读取与写入
- C++文件的读取写入入门小例子
- iOS编程------初级数据持久化/沙盒机制/NSFileManager/简单对象写入文件/复杂对象写入文件
- iOS经典讲解之获取沙盒文件路径写入和读取简单对象
- iOS中的 沙盒文件夹 (数据的写入和读取,归档和反归档)
- ios开发: 模拟器和真机在写入和读取沙盒数据时的区别
- 沙盒路径、拼接路径、将字符串,二进制Data、照片写入到文件中或读取
- .c文件如何编译为ko的MAKEFILE文件编写
- 一致性HASH算法详解
- 命令模式
- tomcat配置文件server.xml详解
- 跋涉不止(43)
- 沙盒机制,写入读取,归解档入门
- OS开发UI篇—CALayer简介
- 数据管理系统
- sqlite3使用简介
- SQLite常用的函数
- iOS开发网络篇—数据缓存
- NSPredicate谓词
- 网络数据解析(1) XML
- 网络数据解析(2) JSON