Xcode9学习笔记67 - 打印查看程序沙箱结构中常用的几个目录

    override func viewDidLoad() {super.viewDidLoad()// Do any additional setup after loading the view, typically from a nib.//首先获得应用程序目录的路径,在该目录下有三个文件夹:文档目录、库目录、临时目录以及一个程序包。该目录就是应用程序的沙盒,应用程序只能访问该目录下的内容let homePath = NSHomeDirectory()print("homePath: \(homePath)\n")//打印程序包主目录的路径//系统会为每个程序生成一个私有目录,并随机生成一个字符串作为目录名。在每次程序启动时,这个目录名称都是不同的。使用此方法,可以获得对应的目录集合let documentPaths = NSSearchPathForDirectoriesInDomains(FileManager.SearchPathDirectory.documentDirectory, FileManager.SearchPathDomainMask.userDomainMask, true)//获得并输出目录集合中的第一个元素,即沙盒中的文档目录,应用程序的所有数据文件应该写入到这个目录下,这个目录通常用于存储用户数据print("documentPath1: \(documentPaths[0])")let documentPaht2 = NSHomeDirectory()+"/Documents"//创建一个字符串对象,同样来用表示沙箱中的文档目录print("documentPath2: \(documentPaht2)")//打印并与上一条日志比较是否相同//获取沙箱下的库目录,它包含两个子目录:缓存目录、参数目录let libraryPaths = NSSearchPathForDirectoriesInDomains(FileManager.SearchPathDirectory.cachesDirectory, FileManager.SearchPathDomainMask.userDomainMask, true)print("libraryPath1: \(libraryPaths[0])")//打印输出库目录let libraryPath2 = NSHomeDirectory() + "/Library"//创建一个字符串对象,同样表示沙箱中的库目录print("libraryPath2: \(libraryPath2)")//打印并与上一条日志比较是否相同//获得沙箱下的缓存目录let cachePaths = NSSearchPathForDirectoriesInDomains(FileManager.SearchPathDirectory.documentDirectory, FileManager.SearchPathDomainMask.userDomainMask, true)//打印输出缓存目录,该目录用于存放应用程序专用的支持文件,保存应用程序再次启动过程中需要的信息print("cachePath1: \(cachePaths[0])")let cachePaht2 = NSHomeDirectory() + "/Caches"//创建一个字符串对象,同样表示沙箱中的缓存目录print("cachePath2: \(cachePaht2)")//打印并与上一条日志比较是否相同let tempPath1 = NSTemporaryDirectory()//当前用户的临时路径print(tempPath1)let tempPath2 = NSHomeDirectory() + "/tmp"print(tempPath2)}

  

转载于:https://www.cnblogs.com/LisenH/p/7864787.html

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

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

相关文章

检测raid类型和磁盘坏道脚本

#!/bin/sh #脚本功能: #安装工具MegaCli64 #Host Information:主机名和ip地址 #Raid Information:raid信息和充电状态 #WARNING Information:MediaErrcount检测坏块和哪块盘 #Disk Information:磁盘信息 #上传MegaC…

《SpringBoot揭秘 快速构建微服务体系》读后感(三)

SpringApplication:SpringBoot程序启动的一站式解决方案 深入探索SpringApplication执行流程 因为书上的版本是1.2的,比较老,这里参考http://blog.csdn.net/zxzzxzzxz123/article/details/69941910 public ConfigurableApplicationContext ru…

装饰器函数

1.装饰器 ​ 装饰器:在不改变原函数的调用方式和函数,额外的增加功能 简单装饰器def timer(func):def inner():print(time.time())func() # 原来的函数return inner ​ timer # func1 timer(func1) def func1():print(func1) 函数带返回值def timer…

6G SDI/12G SDI 基带信号无压缩传输方案介绍

认知数字像素分辨率: 首先从分辨率(数字像素)角度来讲,从标清时代走到高清,从720x576到现在的1920x1080,宽高比从4:3到16:9,这个是我们比较熟悉的,4K实际上是建立在高清基础之上的,我们称之为“…

12.4日团队工作总结

今天团队的主要任务是注重于画图工具的设计,这就意味着我们首要的任务是将画图工具设置出来并可以完整运行,接下来才能顾及之前的改图软件,但今天在设计的过程中,遇到了两者无法无缝结合的问题,目前还没解决。 转载于:…

最短路径——Dijkstra算法以及二叉堆优化(含证明)

一般最短路径算法习惯性的分为两种:单源最短路径算法和全顶点之间最短路径。前者是计算出从一个点出发,到达所有其余可到达顶点的距离。后者是计算出图中所有点之间的路径距离。 单源最短路径 Dijkstra算法 思维 本质上是贪心的思想,声明一个…

linux shmget shmctl

shmgetint shmget(key_t key, size_t size, int flag);key: 标识符的规则size:共享存储段的字节数flag:读写的权限返回值:成功返回共享存储的id,失败返回-1key_t key----------------------------------------------- key标识共享内存的键值: 0/IPC_P…

伯克利开源工具库RLib现已支持大规模多智能体强化学习

AI前线导读:近日,UC伯克利的研究团队RISELab在其Github的项目Ray Rlib 0.6.0中添加了面向多智能体强化学习(multi-agent Reinforcement Learning)的支持。本文由团队成员Eric Liang首发于RISELab团队主页,AI前线翻译整…

如何简单理解光圈大小对手机摄影的影响?

你,准备好参加今夏的朋友圈摄影大赛了吗? 现在的天气有多热,谁出门谁知道!出去玩还要背一台单反,绝对可以说是一种折磨了。但是,如果你拥有一台大光圈的手机,一样可以在朋友圈脱颖而出。 那么…

基于centos6.7的docker私有仓库搭建

2019独角兽企业重金招聘Python工程师标准>>> 1 仓库配置https认证 cd /etc/docker/ mkdir certs [rootdocker01 docker]# openssl req -newkey rsa:4096 -nodes -sha256 -keyout certs/docker01.key -x509 -days 365 -out certs/docker01.crt 填好相应的简称及email…

第十周软件工程作业-每周例行报告

一、PSP T名称C内容ST开始时间ED结束时间中断时间/min实际时间/min会议第一次Scrum会议11月17日16:0011月17日16:30030第二次Scrum会议11月18日15:0011月18日15:30030第三次Scrum会议11月19日17:0011月19日17:30030第四次Scrum会议11月20日11:3511月20日12:15040第五次Scrum会议…

MAVEN下载和安装

1.maven的下载 下载链接http://maven.apache.org/download.cgi从该网站下载最新版本 2.maven的安装 电脑上需要安装JDK环境,需要安装JDK7以上的版本。下载之后进行解压,将maven解压到不含中文和空格的一个目录 maven目录结构bin目录:mvn.bat、…

CCD/CMOS靶面尺寸型号标准

传感器尺寸指的是感光器对角线尺寸,1/1.7英寸(14.8毫米--导向管尺寸)大于1/2.3英寸(10.95毫米---导向管尺寸).采用同种技术水平的感光器,肯定是单…

Linux课程笔记 Day09 课上内容总结 MySql,Php的安装及Apache,Nginx,Php的优化

一 MySql 1.1 如何选择MySql的版本 1.2 MySql单实例安装 (1) 建立mysql用户 首先以root身份登陆到linux系统,然后执行如下命令创建mysql用户及用户组 [roottest3 ~]# groupadd mysql [roottest3 ~]# useradd -s /sbin/nologin -g …

jenkins 通过自动拉取Gitlab上的代码实现自动更新NGINX

所需要用到的环境: Gitlab: 172.20.7.70Jenkins: 172.20.7.71nginx: 172.20.7.72 gitlab 和Jenkins安装自行百度 开始实验操作 首先通过网页访问nginx,nginx默认测试页我是改了的 ,所以看到的不是它原…

Kylin工作原理、体系架构

核心思想:预计算。 对多维分析可能用到的度量进行预计算,将计算好的结果保存成Cube,并存在HBase中,供查询时直接访问 将高复杂度的聚合运算、多表连接……操作转换成对预计算结果的查询。决定了Kylin拥有很好的快速查询、高并发能…

PPT怎么在线转视频?

PPT在线转视频的方法有哪些?在PPT中有些播放上的问题还是可以进行文件的转换,下面就给大家简单的介绍一下方法。步骤一:PPT转视频的直接方法是进入迅捷PDF在线转换器网站中,点击导航栏中的视频音频转换中的PPT转视频; …

夜貓子”必需的!——融合夜視技術

融合夜視技術是一項正在發展中的前沿技術,通過將多個工作在不同波段的夜視傳感器獲得的圖像經過處理後生成高質量的融合圖像,融合圖像的分辨率更高,能夠揭示出那些很難被看到的特徵。按照融合的方式,融合夜視技術可以分為數字融合…

Vue中登录模块

转载于:https://www.cnblogs.com/DZzzz/p/8921783.html

深度解析红外探测器

辐射/设计/技术之前我们跟大家解析了红外探测器的相关性能参数。 对于红外探测器的工作原理你了解多少呢?今天小编再继续上次的讲解,为大家解析非制冷红外焦平面探测器技术原理 及机芯介绍。 非制冷红外技术原理 非制冷红外探测器利用红外辐射的热效应&a…