我试图使用以下代码将unix时间戳保存到核心数据:
NSManagedObject *managedPostObject = NSEntityDescription插入-- insertNewObjectForEntityForName:@"CDPost“inManagedObjectContext:moc;[managedPostObject setValue:structureDictionary:@”时间戳“forKey:@”时间戳“;
从远程服务器获得时间戳的格式如下:
“时间戳”:1323118064000
由于某种原因,所有时间戳值都保存为:-2147483648
我已经尝试过INTEGER32、INTEGER64、Decimal、Double以及string作为时间戳的数据类型,但都没有工作。
解决了:为我做了以下技巧:
NSString *timeStampStr = [structureDictionary objectForKey:@“时间戳”stringValue];managedPostObject setValue:timeStampStr:@“时间戳”;
发布于 2012-01-05 00:52:55
是的,为了扩展Simon的评论,首先要确保你这样做并不是为了获得你的价值:
NSInteger timestamp = [[dictionary objectForKey:@"timestamp"] intValue]。
当#对于空间太大时,它看起来就像一个典型的包装案例。
相反,尝试类似于long long timestamp = [[dictionary objectForKey:@"timestamp"] longLongValue]的东西。
然后将其保存到INT64中。
https://stackoverflow.com/questions/8736065
复制相似问题