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)}