iOS项目运行有四个文件目录,如图所示:
1.Documents 目录:存储用户数据或其它应该定期备份的信息.
2.Library 目录:目录下有两个子目录,.Caches 目录:用于存放应用程序专用的支持文件,保存应用程序再次启动过程中需要的信息.PreferencesPreferences 目录:包含应用程序的偏好设置文件。不应该直接创建偏好设置文件,应该通过NSUserDefaults类来取得和设置应用程序的偏好.
3.tmp 目录:目录用于存放临时文件,保存应用程序再次启动过程中不需要的信息.
4.AppName.app 目录:应用程序的程序包目录,包含应用程序的本身。由于应用程序必须经过签名,所以您在运行时不能对这个目录中的内容进行修改,否则可能会使应用程序无法启动.资源图片文件都在这个目录下面.
路径获取代码:
<pre><code>`
let documentPath:String = NSSearchPathForDirectoriesInDomains(FileManager.SearchPathDirectory.documentDirectory, FileManager.SearchPathDomainMask.userDomainMask, true)[0]
print("Document路径----(documentPath)")
let libraryPath:String = NSSearchPathForDirectoriesInDomains(FileManager.SearchPathDirectory.libraryDirectory, FileManager.SearchPathDomainMask.userDomainMask, true)[0]
print("library路径----\(libraryPath)")
let cachePath:String = NSSearchPathForDirectoriesInDomains(FileManager.SearchPathDirectory.cachesDirectory, FileManager.SearchPathDomainMask.userDomainMask, true)[0]
print("Cache路径----\(cachePath)")
let preferPath:String = NSSearchPathForDirectoriesInDomains(FileManager.SearchPathDirectory.preferencePanesDirectory, FileManager.SearchPathDomainMask.userDomainMask, true)[0]
print("Prefer路径----\(preferPath)")
let homeDir:String = NSHomeDirectory()
print("沙盒地址---\(homeDir)")
let imagePath = Bundle.main.path(forResource: "sale", ofType: "png")!
print("FlyElephnt-图片路径----\(imagePath)")
let bundlePath = Bundle.main.bundleURL.path
print("FlyElephnt-App资源文件路径--\(bundlePath)")
let testDataPath = Bundle.main.bundleURL.appendingPathComponent("FlyElephant").path
print("压缩文件的路径---\(testDataPath)")`</code></pre>