文档章节

iOS 沙盒路径获取,创建文件

别情花如依丶
 别情花如依丶
发布于 2016/04/20 22:07
字数 398
阅读 6
收藏 0

沙盒下主要有四个文件夹:document,caches,tmp,library

document 的路径 程序运行时生成的文件,这个文件不要存比较放大的文件,比如音频,视频类,因为这里的东西会被上传

caches 的路径 一般用于文件的下载,存储(不会被上传)

tmp 临时文件.程序结束后应该清空

沙盒文件夹路径获取:

获取沙盒路径:

1 NSString *sandBoxPath = NSHomeDirectory();

 

 

获取 document :

1 NSString *documentPath = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)[0];

 

获取 caches 路径:

1 NSString *cacherPath = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES)[0];

 

 

获取 tmp 路径:

1 NSString *tmpPath = NSTemporaryDirectory();

 

 

在沙盒下创建文件:

1.获取路径

2.拼接文件名(包括后缀)

3.将内容写到文件

例:写一个 txt 文件:

1 //NSString 写入 
2      
3     NSString *str = @"二傻子"; 
4      
5     //获取 document 路径 
6     NSString *docPath = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)[0]; 
7      
8     //拼接上一个 txt 文件 
9     NSString *filePath = [docPath stringByAppendingPathComponent:@"coco.txt"];
10     
11     //吧字符串写到 txt 文件
12     [str writeToFile:filePath atomically:YES encoding:NSUTF8StringEncoding error:nil];

 

例:写一个 array 文件:

 

1 //NSArray
2     
3     NSArray *array = @[@"二傻子",@"三傻子",@"翠花",@"叶良岑",@"赵日天",@"王尼玛"];
4     
5     NSString *tmpPath1 = NSTemporaryDirectory();
6     
7     NSString *tmpFilePath = [tmpPath1 stringByAppendingPathComponent:@"tmp.plist"];
8     
9     [array writeToFile:tmpFilePath atomically:YES];

 

 

 

例:写一个 dictionary 文件:

 

1 NSDictionary *dic = @{@"1号":@"XXXXX",@"2号":@"XXXXX",@"3号":@"XXXXX",@"4号":@"XXXXX",@"5号":@"XXXXX"};
2     
3 NSString *dicPath = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES)[0];
4 NSString *dicFilePath = [dicPath stringByAppendingPathComponent:@"dic.plist"];
5     
6 [dic writeToFile:dicFilePath atomically:YES];

 

 

 

 

例:写一个 image 文件:

 

1 NSString *cacherPath2 = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES)[0];
2     
3 NSString *imgFilePath = [cacherPath2 stringByAppendingPathComponent:@"123.png"];
4 
5 NSData *data = [[NSData alloc]initWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"1" ofType:@"png"]];
6     
7 [data writeToFile:imgFilePath atomically:YES];

 

 

© 著作权归作者所有

共有 人打赏支持
别情花如依丶

别情花如依丶

粉丝 5
博文 78
码字总数 20405
作品 6
程序员
私信 提问
一分钟越狱 iOS 11.4|世界顶级黑客大会 DEFCON 议题详解

雷锋网编者按:苹果公司在 macOS 和 iOS 中都采用了沙盒机制保护系统不受恶意软件的攻击。在世界著名的黑客大会 DEFCON 的这次演讲中,来自阿里安全的安全研究员分析了最新版的 iOS 中的沙盒...

李勤
2018/08/13
0
0
iOS学习之sqlite的创建数据库,表,插入查看数据

iOS sqlite数据库操作。步骤是: 先加入sqlite开发库libsqlite3.dylib, 新建或打开数据库, 创建数据表, 插入数据, 查询数据并打印 1、新建项目sqliteDemo,添加使用sqlite的库libsqlite3....

知行合一100
2012/06/29
0
0
ios应用数据存储方式(XML属性列表-plist) - 转

一.ios应用常用的数据存储方式   1.plist(XML属性列表归档)   2.偏好设置   3.NSKeydeArchiver归档(存储自定义对象)   4.SQLite3(数据库,关系型数据库,不能直接存储对象,要编写一些数...

久依
2018/12/12
0
0
iOS开发技巧之查看模拟器沙盒文件

iOS开发技巧之查看模拟器沙盒文件 iOS开发中,在对数据库进行操作时,有时我们需要直观的查看数据库的内容,那么我们如何找到沙盒中的这个文件呢,步骤很简单: 1.点击Finder选项栏上的前往菜...

珲少
2015/07/19
0
0
Deep Linking技术你知道吗

本文作者徐斌,原腾信IOS工程师,现LinkedME高级工程师。 SandBox是什么? SandBox(沙盒)机制规定应用程序只能够读取应用程序内部的数据,不可以访问其他应用的信息数据。 在iOS设备中每一...

LinkedME
2016/07/11
0
0

没有更多内容

加载失败,请刷新页面

加载更多

grafana安装使用及与zabbix集成

grafana简介 Grafana是一个完全开源的度量分析与可视化平台,可对来自各种各种数据源的数据进行查询、分析、可视化处理以及配置告警。 Grafana支持的数据源: 官方:Graphite,InfluxDB,Ope...

阿dai学长
30分钟前
6
0
带你看数据挖掘与机器学习-厦大EDP上课出勤预测

带你看数据挖掘与机器学习-厦大EDP上课出勤预测 标签: 数据挖掘 特征工程 机器学习 出勤预测 write by xmhexi 2019/3/22 内容提要 首先说明本文是一篇科普文章,通过一个实际案例,帮助理解什...

xmhexi
今天
73
0
IOS  学习记录

1.StackView=>IOS 9及以上支持 2.布局方式: AutoLayout / StackView 堆布局 (线性布局) 3.屏幕适配 (资源分辨率、设计分辨率、屏幕分辨率) Size Class技术 可以针对 屏幕的方向进行设置...

萨x姆
今天
5
0
第四次工业革命:自主经济的崛起

https://36kr.com/p/5170370.html

shengjuntu
昨天
5
0
Cloud Native 与12-Factor

12-Factor(twelve-factor),也称为“十二要素”,是一套流行的应用程序开发原则。Cloud Native架构中使用12-Factor作为设计准则。 12-Factor 的目标在于: 使用标准化流程自动配置,从而使...

waylau
昨天
10
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部