簡體   English   中英

如何在Core Data中存儲NSDate?

[英]How to store NSDate in Core Data?

在生成Core Data子類時,我檢查在Core Data存儲中使用原始數據類型。

在此輸入圖像描述

我應該從NSDate轉換哪個NSTimeInterval表示? 或者無關緊要,只需在讀/寫相同的托管對象屬性時正確使用?

我更喜歡使用: mo.creationDate = date.timeIntervalSinceReferenceDate

iOS的參考日期為:2001年1月1日,GMT。
Unix時間戳參考日期計算自:1970年1月1日,UTC

如果這是一個完全脫機的應用程序,您可以使用timeIntervalSinceReferenceDate並直接存儲該值。

但是,如果您要與服務器同步,那么通常最好將數據作為unix時間戳發送到服務器。 因為桌面使用unix時間戳作為默認值。

因此,在第二種情況下,您可以選擇將日期直接保存為UnixTimeStamp,並使用Model Class中的getter將其轉換為本地使用(請參閱:@VladZ)或者您可以將其保存為iOS的參考日期並將其轉換為UnixTimeStamp每次發送到服務器。

使用 - timeIntervalSince1970並將此值保存在CoreDate中

mo.creationDate = [NSNumber numberWithDouble:timeInterval];

您正在添加時間間隔,它不是NSDate類型的對象。

嘗試添加具有所需時間間隔的NSDate:

看一下這個

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM