Xcode9学习笔记67 - 打印查看程序沙箱结构中常用的几个目录
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | 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 ) } |
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步