資料持久化

2021-07-23 23:50:24 字數 1621 閱讀 5945

(2)ios應用只能在自己的沙盒內部讀寫檔案,基本不可以去其他地方訪問檔案.所有需要使用的資源檔案都需要儲存在沙盒內部,如,聲音,文字等. 

(3)ios應用所請求的資料都要進行許可權檢測,如果不符合條件的話該請求將不會被執行. 

(4)沙盒是一種安全體系,其核心內容就是對ios應用的操作進行許可權控制2.為什麼要使用沙盒(1)防止你的應用被其他應用惡意訪問/更改或刪除 

(2)防止其他應用訪問你應用當中的個人資料 

(3)應用資料清理十分方便,不會在其他地方遺留痕跡3.沙盒檔案體系

應用在安裝的時候會給該資料夾進行數字簽名,在每次應用啟動前進行簽名認證.如果對該資料夾進行了修改,那麼也會將數字簽名破壞,導致應用不能啟動. 

這個資料夾的內容在進行itunes同步的時候只會備份一次,除非該應用發生版本變更或者被移除.(2)documents①作用

documents資料夾用來儲存非常大的檔案或需要非常頻繁更新的資料,但是基於nsuserdefaults的首選項儲存資料並不會儲存在其中.

能夠進行itunes或者icloud備份.

②獲取nsarray*documentdirectory = nssearchpathfordirectionsindomains(nsdocumentdirectory,nsuserdomainmask,yes);//因為documentdirectory陣列只有乙個元素,所以取第乙個或者最後乙個都是一樣的nsstring*mydocpath1 = [documentdirectory firstobject];//或nsstring*mydocpath2 = [documentdirectory lastobject]; 1

2 34 5

6 12 3

4 56

(3)library①作用

library資料夾用來儲存系統檔案.可以在該資料夾中建立新的子資料夾來儲存資料.

library目錄下有preferences和caches目錄.

其中preferences用來存放應用程式的設定資料,比如nsuserdefaults相關資料就是儲存在~/library/preferences資料夾中.

caches與documents相似,可以存放應用程式的資料,用來儲存資料庫快取檔案/快取內容(新聞,地圖資料等).要注意的是,該資料夾並不會被備份.

(4)tmp①作用

如果應用沒有執行,並且系統記憶體不夠,那麼ios會自動移除該資料夾內的檔案來釋放空間

itunes或icloud不會備份該資料夾內的檔案

②獲取nsstring *tmpdirectory=nstemporarydirectory();

何海軍15520737235 2016/10/24 19:06:21

nsarray *documentdirectory = nssearchpathfordirectionsindomains(nsdocumentdirectory,nsuserdomainmask,yes);

//因為documentdirectory陣列只有乙個元素,所以取第乙個或者最後乙個都是一樣的

nsstring *mydocpath1 = [documentdirectory firstobject];

//或nsstring *mydocpath2 = [documentdirectory lastobject];

資料持久化

資料持久化就是將記憶體中的資料模型轉換為儲存模型,以及將儲存模型轉換為記憶體中的資料模型的統稱.資料模型可以是任何資料結構或物件模型,儲存模型可以是關係模型 xml 二進位製流等。cmp和hibernate只是物件模型到關係模型之間轉換的不同實現。只不過物件模型和關係模型應用廣泛,所以就會誤認為資料...

資料持久化

首先是cocos2d x自己封閉的ccuserdefault跨平台的檔案儲存類,它是用的xml格式,具體操作非常類似於應用開發的ini檔案,可操作性不是很強,如果訪問比較複雜的資料,那就得自己動手去解析乙個字串,下面是示例 基本一看就懂 void userdefaulttest dotest els...

資料持久化

資料持久化是通過檔案將資料儲存在磁碟上 ios有四種資料持久化方式 1.屬性列表 property list 簡單易用,適合小資料量的儲存和查詢操作,但是不適合大量資料的儲存.屬性列表 1屬性列表 property list nsarray plist name age 指定儲存的地方 nsstri...