一、簡單說明
在使用plist進行資料存儲和讀取,隻适用于系統自帶的一些常用類型才能用,且必須先擷取路徑相對麻煩;
偏好設定(将所有的東西都儲存在同一個檔案夾下面,且主要用于存儲應用的設定資訊)
歸檔:因為前兩者都有一個緻命的缺陷,隻能存儲常用的類型。歸檔可以實作把自定義的對象存放在檔案中。
二、代碼示例
1.檔案結構

2.代碼示例
yyviewcontroller.m檔案
建立一個person類
yyperson.h檔案
yyperson.m檔案
3.列印效果和兩個重要的錯誤提示
點選儲存按鈕和讀取按鈕,成功列印結果如下:
關于不實作兩個協定方法的錯誤提示:
-(void)encodewithcoder:(nscoder *)acoder方法:
-(id)initwithcoder:(nscoder *)adecoder方法:
三、繼承類中的使用
建立一個學生類,讓這個類繼承自preson這個類,增加一個體重的屬性。
yystudent.h檔案
yystudent.m檔案
點選儲存按鈕和讀取按鈕後的列印輸出:
四、重要說明
1.儲存資料過程:
2.讀取資料過程:
3.遵守nscoding協定,并實作該協定中的兩個方法。
4.如果是繼承,則子類一定要重寫那兩個方法。因為person的子類在存取的時候,會去子類中去找調用的方法,沒找到那麼它就去父類中找,是以最後儲存和讀取的時候新增加的屬性會被忽略。需要先調用父類的方法,先初始化父類的,再初始化子類的。
5.儲存資料的檔案的字尾名可以随意命名。
6.通過plist儲存的資料是直接顯示的,不安全。通過歸檔方法儲存的資料在檔案中打開是亂碼的,更安全。