我嘗試使用下面的代碼保存unix時間戳到核心數據:在覈心數據保存UNIX時間戳其轉換成負integere
NSManagedObject *managedPostObject = [NSEntityDescription insertNewObjectForEntityForName:@"CDPost" inManagedObjectContext:moc]; [managedPostObject setValue:[structureDictionary objectForKey:@"timestamp"] forKey:@"timestamp"];
,我從得到的時間戳格式遠程服務器如下:
「時間戳」:1323118064000
出於某種原因,所有時間戳值被保存爲:-2147483648
我已經嘗試INTEGER32,INTEGER64,十進制,雙倍以及字符串作爲時間戳的數據類型,但都沒有工作。
解決: 關注爲我做的伎倆:
的NSString * timeStampStr = [[structureDictionary objectForKey:@ 「時間戳」] stringValue的]。 [managedPostObject setValue:timeStampStr forKey:@「timestamp」];
'NSDoubleAttributeType'可以工作,但要確保在存儲之前不要在處理值時產生問題 – 2012-01-05 00:39:48