ios 获取沙河文件夹_iOS开发之获取沙盒路径

iOS开发之沙盒机制(SandBox)详细讲解了沙盒的一些机制。在开发中,我们需要对沙盒进行操作,所以我们需要获取到沙盒路径。

沙盒里的文件夹包括Documents、Library、tmp。这三个文件夹的作用请点击这里。接下来我们来讲解如何获取Documents、Library、tmp的路径。

获取沙盒根目录

获取沙盒根目录,直接调用NSHomeDirectory():

//获取沙盒根目录

NSString *directory = NSHomeDirectory();

NSLog(@"directory:%@", directory);

控制台输出:

2015-07-22 00:40:16.185 iOSStrongDemo[1605:555658] directory:/var/mobile/Containers/Data/Application/F9418815-51A9-4A0A-A76C-6FD37C400928

这个是真机的路径,大家有时间的话可以看看模拟器的根目录路径。

获取Documents路径

获取Documents路径如下:

//获取Documents路径

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);

NSString *path = [paths objectAtIndex:0];

NSLog(@"path:%@", path);

控制台输出:

2015-07-22 00:41:41.397 iOSStrongDemo[1613:556159] path:/var/mobile/Containers/Data/Application/A62B886B-A8F0-4215-B59D-1F505C3997BD/Documents

获取Documents文件夹目录,第一个参数是说明获取Doucments文件夹目录,第二个参数说明是在当前应用沙盒中获取。

获取Library路径

//获取Library路径

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES);

NSString *path = [paths objectAtIndex:0];

NSLog(@"path:%@", path);

控制台输出:

2015-07-22 00:43:15.803 iOSStrongDemo[1619:556638] /var/mobile/Containers/Data/Application/17300507-4643-4DE7-BC68-E13DB19C8D98/Library

获取Caches路径

//获取Caches路径

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);

NSString *path = [paths objectAtIndex:0];

NSLog(@"path:%@", path);

控制台输出:

2015-07-22 00:44:31.383 iOSStrongDemo[1626:557083] path:/var/mobile/Containers/Data/Application/1E945B52-E29D-4041-A489-1AA1B11BB960/Library/Caches

获取tmp路径

NSString *tmp = NSTemporaryDirectory();

NSLog(@"tmp:%@", tmp);

控制台输出:

2015-07-22 00:46:07.846 iOSStrongDemo[1632:557537] tmp:/private/var/mobile/Containers/Data/Application/4BE02307-1CC5-47E8-BEA8-CEBB7ED5A402/tmp/

以上是iOS开发中获取沙盒路径的方法,也许还有更好的获取方法等待我们去发现。后面我们还会讲到关于在沙盒里进行读写文件操作。

文章来源:https://mp.weixin.qq.com/s?__biz=MzA3NzM0NzkxMQ==&mid=210821886&idx=1&sn=825fbf62cb1996b1dac465e287aaa331&key=c76941211a49ab58444a20929259bf258710db2163e11528ee8fc03b6d7a05827e9e14db89981b7bb5238c0efe92a2c6&ascene=0&uin=MjE3OTcxNzI4MQ%3D%3D&devicetype=iMac14%2C3+OSX+OSX+10.10.4+build(14E46)&version=11020012&pass_ticket=eDi5RgD4jePAAoAazEcYq2COWmbChlXahkQ55Y8y1tlnh%2FhDz5TXJS7vXCdeWth%2F

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/503845.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php软删除代码,PHP laeavel软删除以及软删除还原 易错点

PHP laeavel软删除以及软删除还原 易错点PHP laeavel软删除以及软删除还原 易错点首先 数据库字段添加deleted_at字段然后在模型层中引入 SoftDeletes类 并引用use Illuminate\Database\Eloquent\SoftDeletes;控制器正常执行删除代码//软删除public function del(int $id){//$r…

为何控件删除不了_过不好又离不了的婚姻,不如这样去处理

你是否常常感慨,走过了那么长的路,看遍了那么多的繁花,听过了那么多的道理,却依然过不好这一生?明明已经很用心的去生活了,明明已经尽了最大的努力了,生活依然如同一团乱麻,处理不好…

oracle命令行原理,Oracle命令行操作方式

(1) 进入sqlplus界面 sqlplus user/passworddbname (2)进入sqlplus界面 sqlplus /nolog SQL>conn sys/jiaxiaoaiorcl as sysdba; (4)查看当前所有的数据库 select * from v$database; 或 select name from v$database; (5)查看哪些用户拥有sysdb…

编辑器eslint格式_ESlint 代码格式大坑vscode vetur,eslint 冲突

解决冲突:① vscode 设置页面设置需要使用 ESlint 的格式化,就要将 vscode 编辑器默认的格式化去掉、把 vetur 插件的格式化改写JSON"vetur.validation.template": false // 把 vetur 扩展的 template 格式化去掉"editor.formatOnSave…

单基因gsea_10个细胞系仅1个表达你的基因

遇到了粉丝的一个超级好的问题:感兴趣的一个基因A,研究它在10种乳腺癌细胞系中的表达情况,跑了western和qpcr 。 发现它只在一种乳腺癌细胞系中表达,其他9种都不表达。 结果是一致的,确认自己的实验没有问题&#xff…

大数据学情分析_多分学情大数据分析

多分学情大数据分析云上大数据仓库解决方案阿里云为企业提供稳定可靠离线数仓和实时数仓的解决方案,包括数据采集、数据存储、数据开发、数据服务、数据运维、数据安全、数据质量、数据地图等完整链路。离线数仓基于Serverless的云上数据仓库解决方案。架构特点开箱…

oracle修改成olap模式,的Oracle OLAP Java实现 - 正确源加入

为此,我使用的是默认的模式/例如从Oracle OLAP下载部分GLOBAL 。这是从Oracle OLAP的Java引导代码的修改后的版本:MdmCube unitsCube (MdmCube)mdmDBSchema.getTopLevelObject("PRICE_CUBE_AWJ");MdmBaseMeasure mdmUnits (MdmBaseMeasure)uni…

c 定义结构体时提示应输入声明_C++|了解结构体的内存对齐(成员声明的顺序影响占用空间大小)...

我们使用的电子计算机绝大部分都是冯诺依曼结构的机器,遵循“存储程序”的概念。数据处理以存储为前提,在编程中数据如何“存得进去,取得出来”,并且符合空间、时间效率的要求,在考虑数据结构和算法时,都要…

oracle to char trim,to_char前面多出空格

to_char前面多出空格用to_char对数字时前面会多出一个空格。SQL> select to_char(10,00) from dual;TO_---10 --前面有一个空格,这是一个正数的符号位SQL> select length(to_char(10,00)) from dual;LENGTH(TO_CHAR(10,00))------------------------3 …

lisp正负调换_lisp中如何把符号转换为字符串

满意答案rantian20022018.05.29采纳率:47% 等级:12已帮助:12730人1,算术运算 - * / ~ 1 1-abs atan cos exp expt fix floatgcd log logand logior lsh max minminusp rem sin sqrt zerop2,字符串处理strcase strca…

python windows开发_windows 下 python 开发是一种什么样的体验?

只知道如果想用的包没编译好(源码状态),你在win下,能折腾很久,各种奇葩报错,在linux下就好多了 补充一下: 我是用的是python2.7,微软给了官方的针对2.7的编译环境: Visual C Compiler for Python 2.7 根据前…

linux 找不到php命令,bash scp:未找到命令的解决方法

scp命令用于通过ssh在两台服务器之间传输文件。大多数scp用户在系统中已经可以使用scp命令,但它仍然显示“bash:scp:command not found”。因此注意,scp命令必须在本地和远程系统上都可用才可以避免这个问题。安装SCP命令包scp命令来自Red Hat系统上的op…

vue移动端项目怎么生成apk_vue-cli或vue项目利用HBuilder打包成移动端app操作

一、测试项目是否可以正确运行 指令:npm run dev1、首先我们先建立一个vue的项目,本人用的是vue-cli随便建立的,然后运行项目二、修改路径 (assetsPublicPath: ‘./)1、 打开我们config中的js文件,修改assetsPublicPath的路径为"./"…

python字典怎么添加值_python字典中如何添加键值对

添加键值对 首先定义一个空字典 1 >>> dic{} 直接对字典中不存在的key进行赋值来添加 1 2 3 >>> dic[name]zhangsan >>> dic {name: zhangsan} 如果key或value都是变量也可以用这种方法 1 2 3 4 5 >>> keyage >>> value30 >&g…

Redis数据库——键过期时间

一.设置键的生存时间或者过期时间 我们可以在Redis客户端输入命令,可以以秒或者毫秒精度为数据库中的某个键设置生存时间,在指定秒数或者毫秒数之后,服务器会自动删除生存时间为0的键。 1.1 设置过期时间 Redis有四个不同的命令可以用于设置键…

linux 系统配额管理功能,Linux磁盘配额管理

前言:磁盘配额是一种磁盘空间的管理机制,使用磁盘配额可限制用户或组在某个特定文件系统中所能使用的最大空间。Linux系统是多用户任务操作系统,在使用系统时,会出现多用户共同使用一个磁盘的情况,如果其中少数几个用户…

python中的with open读取表格文件_python 使用 with open() as 读写文件

读文件: 要以读文件的模式打开一个文件对象,使用Python内置的open()函数,传入文件名和标示符: >>> f open(E:\python\python\test.txt, r) 标示符r表示读,这样,我们就成功地打开了一个文件。 如果文件不存在…

实用必备xp框架模块_Xposed框架安装、使用以及插件开发

Xposed框架:是一款可以在不修改APK的情况下影响程序运行(修改系统)的框架服务,基于它可以制作出许多功能强大的模块,且在功能不冲突的情况下同时运作。对原生Launcher替换图标等应用或功能均基于此框架。1、安装xposed…

3D动作绑定_3D动漫制作软件,你知道几个?

最近小编收到很多私信,都是问小编3D动画是靠什么软件制作而成的?小编经过长时间的查询,今天就给大家来讲一讲3D动画到底是靠什么软件制作而成的。首先,先给大家来讲讲3D动画在国内的制作。动画制作是个庞大的工业流程,…

plc单片机组态软件php_STC8单片机扩展WiFi通信实现功能与组态王组态软件详细组态...

STC8单片机扩展WiFi通信模块和组态王组态软件实现Modbus TCP以太网通信一、通信实现功能:1、Modbus TCP Client:组态王组态软件2、Modbus TCP Server:STC单片机WiFi通信模块3、组态王组态软件对单片机数字量输入、晶体管输出、模拟量输入、模…