iOS沙盒目錄--文件管理一

ios的沙盒機(jī)制,應(yīng)用只能訪問自己應(yīng)用下的文件。ios應(yīng)用產(chǎn)生的內(nèi)容,如圖像、文件、緩存內(nèi)容都必須存儲(chǔ)在自己的沙盒內(nèi),每個(gè)沙盒有3個(gè)文件夾:Documents、Library、tmp。

Documents:蘋果建議將程序創(chuàng)建產(chǎn)生的文件以及應(yīng)用瀏覽產(chǎn)生的文件數(shù)據(jù)保存在該目錄下,iTunes備份和恢復(fù)的時(shí)候包含次目錄。

Library/Preferences:存儲(chǔ)程序的默認(rèn)設(shè)置或其他狀態(tài)信息NSUserDefault

Library/Caches:存放緩存文件,保存應(yīng)用的持久化數(shù)據(jù),用于應(yīng)用升級(jí)或者關(guān)閉后數(shù)據(jù)的保存,不會(huì)被iTunes同步,所以為了減少同步的時(shí)間,可以考慮將一些比較大的文件而又不需要備份的文件放到這個(gè)目錄下。

tmp:提供了一個(gè)即時(shí)創(chuàng)建臨時(shí)文件的地方,但不需要持久化,在應(yīng)用關(guān)閉后,該目錄下的數(shù)據(jù)將刪除,也可能系統(tǒng)在程序不運(yùn)行的時(shí)候清除。

一、獲取沙盒根路徑

NSString *homePaht = NSHomeDirectory();

二、獲取Documents目錄路徑

方法一:NSString *documentsPath =? [NSHomeDirectory() stringByAppendingPathComponent:@"Documents"];//在獲取根路徑的基礎(chǔ)上,拼接文件地址

方法二:NSArray *paths? = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);

NSString *documentsDirectory = [paths objectAtIndex:0];

三、獲取Library/Preferences目錄路徑

NSArray *paths? = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES);

NSString *PreferenceDirectory = [paths objectAtIndex:0];

四、獲取Library/Caches路徑

NSArray *paths? = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);

NSString *cacheDirectory = [paths objectAtIndex:0];

五、獲取tmp路徑

NSString *tmpDirectory = NSTemporaryDirectory();

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容