0
是否可以在覈心數據持久性存儲中添加一些「幻數」數據?如何在覈心數據永久性存儲中添加「幻數」?
我有一個使用自定義二進制文件格式的舊應用程序。每個文件以5個字節的幻數(假設爲0A 0B 0C 0D 0E
)和1個字節的格式版本標識符開頭;之後是實際數據。當用戶試圖打開一個文件的應用程序的現有版本做以下檢查:
- 如果第5個字節的文件沒有一個神奇的數字匹配,如「文件是用戶得到一個消息不是以該應用程序可以讀取的格式。它可能有錯誤的文件擴展名。「
- 如果幻數匹配,但版本標識符高於應用程序版本可以讀取的版本,則用戶會收到一條消息,如」該文件是使用較新版本的這個應用程序。您需要升級到新版本。「
我想利用核心數據存儲在新版本的應用程序中,同時仍然使用相同的文件擴展名並保持與舊版應用程序的適當兼容性:嘗試使用舊版本打開使用新版本編寫的文件的用戶應該得到應該升級的消息,而不是其他消息。這可能嗎?如何?
感謝您的回答,但我恐怕我不明白。您的答案似乎是關於管理基於Core Data的文件格式的不同版本。但問題是將現有的自定義文件格式(基於核心數據的*而非*)遷移到基於核心數據的格式。這個想法是,每個文件仍然以相同的5個字節的幻數開始,但是不同的1個字節的版本標識符。這樣,用戶在嘗試使用舊版應用程序打開文件時會收到相應的消息。 – Rinzwind
將您的商店轉換爲Core Data是完全不同的問題。只需使用現有邏輯打開存儲並通過記錄將其複製到核心數據記錄即可。 – Mundi