您好,登錄后才能下訂單哦!
這篇文章主要講解了“Objective歸檔是什么”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Objective歸檔是什么”吧!
在Objective-C語言中,歸檔是一個過程,
即用某種格式來保存一個或多個對象,以便以后還原這些對象。
類似于Java中的序列化和反序列化。
在Mac OS X上的應用程序使用XML屬性列表(或plists)
存儲諸如默認參數選擇、應用程序設置和配置信息這樣的數據。
使用PropertyList Editor程序來創建屬性列表。
使用NSPropertyListSerialization類在文件中寫入或讀取屬性列表可以在不同的平臺之間移植。
歸檔方法一般包括:
1)使用XML屬性列表進行歸檔。(如果可能,盡量在程序中使用XML屬性列表)
2)使用NSKeyedArchiver歸檔。
3)使用NSData創建自定義檔案。
要歸檔當前沒有列出的對象,必須告知系統如何歸檔(或編碼)你的對象,以及如何解歸檔(或解碼)它們。
這是按照<NSCoding>協議,在類定義中添加encodeWithCoder:方法和initWithCoder:方法實現的。
每次歸檔程序想要根據指定的類編碼對象時,都將調用encodeWithCoder:方法,
該方法告知歸檔程序如何進行歸檔。
類似地,每次從指定的類解碼對象時,都會調用initWIthCoder:方法。
一般而言,編碼方法應該指定如何歸檔想要保存的對象中的每個實例變量。
從檔案文件中恢復數據很簡單:所做的工作只需和歸檔文件相反。
首先,需要像以前那樣分配一個數據空間。
其次,把檔案文件中的數據讀入該數據空間。
然后,需要創建一個NSKeydUnarchiver對象,并告知它從指定的空間解碼數據。
必須調用解碼方法來提取和解碼歸檔的對象,做完之后,向NSKeyedUnarchiver對象發送一條finishDecoding消息。
使用歸檔程序復制對象:
可以使用Foundation的歸檔功能來創建對象的深復制。
感謝各位的閱讀,以上就是“Objective歸檔是什么”的內容了,經過本文的學習后,相信大家對Objective歸檔是什么這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。