[英]Storing images in Core Data or as file?
我有一組包含圖像的數據。 我想緩存這些數據。 我應該將它們存儲在文件系統還是核心數據上?為什么?
有兩個主要選擇:
我個人更喜歡第一種選擇,因為它允許我選擇何時在內存中加載實際圖像。 這也意味着我不必記住原始數據的格式; 我可以只使用路徑alloc
/ init
一個新UIImage
對象。
你可能想讀這從如何處理二進制大對象(BLOB)的核心數據編程指南。 對於什么尺寸的二進制數據應該和不應該存儲在實際的Core Data存儲中有經驗法則。
您還可以查看Core Data iPad / iPhone BLOBS vs File系統的20k PDF文件
如果您確實在Core Data存儲中放置二進制數據,那么最好有一個“數據”實體來保存實際數據並將“Image”實體分開。 在兩個實體之間創建關系,以便只需在實際需要時加載“數據”。 “圖像”實體可以保存元數據,例如標題,數據類型等。
關於存儲用戶數據/文件的位置(我發現“應用程序支持”是一個不錯的位置,因為我擔心用戶移動,刪除或更改文件會導致圖像無法移動待我的申請恢復和使用)
以Minecraft為例:例如。 “〜/ Library / Application Support / minecraft / saves /”
我同意先前的注釋和存儲核心數據中圖像的路徑,但是否則將圖像本身作為png文件存儲在核心數據之外的自己的文件夾中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.