1.結(jié)構(gòu)
<pre><code>
"應(yīng)用程序包"
Documents
Library
Caches
Preferences
tmp
</code></pre>
2.目錄特性
雖然沙盒中有這么多文件夾,但是沒(méi)有文件夾都不盡相同荆残,都有各自的特性蛇捌。所以在選擇存放目錄時(shí),一定要認(rèn)真選擇適合的目錄。
"應(yīng)用程序包": 這里面存放的是應(yīng)用程序的源文件瓢阴,包括資源文件和可執(zhí)行文件。
<pre><code>let path = NSBundle.mainBundle().bundlePath</code></pre>Documents: 最常用的目錄健无,iTunes同步該應(yīng)用時(shí)會(huì)同步此文件夾中的內(nèi)容炫掐,適合存儲(chǔ)重要數(shù)據(jù)。
<pre><code>let documentPaths = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.DocumentDirectory, NSSearchPathDomainMask.UserDomainMask, true)
let documentPath = documentPaths[0] as! String
或者
let documentPath = NSHomeDirectory() + "/Documents"
</code></pre>Library/Caches: iTunes不會(huì)同步此文件夾睬涧,適合存儲(chǔ)體積大募胃,不需要備份的非重要數(shù)據(jù)。
<pre><code>let cachePaths = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.CachesDirectory, NSSearchPathDomainMask.UserDomainMask, true)
let CachePath = cachePaths[0] as! String
或者
let documentPath = NSHomeDirectory() + "/Library"
let documentPath = NSHomeDirectory() + "/Library/Caches"
</code></pre>Library/Preferences: iTunes同步該應(yīng)用時(shí)會(huì)同步此文件夾中的內(nèi)容畦浓,通常保存應(yīng)用的設(shè)置信息痹束。
tmp: iTunes不會(huì)同步此文件夾,系統(tǒng)可能在應(yīng)用沒(méi)運(yùn)行時(shí)就刪除該目錄下的文件讶请,所以此目錄適合保存應(yīng)用中的一些臨時(shí)文件祷嘶,用完就刪除。
<pre><code>let tmpPath = NSTemporaryDirectory()</code></pre>