iphone - 在 core-data 中保存 unix timestamp 将其转换为负整数

标签 iphone ios core-data unix-timestamp

我正在尝试使用以下代码将 unix 时间戳保存到核心数据:

NSManagedObject *managedPostObject = [NSEntityDescription insertNewObjectForEntityForName:@"CDPost" inManagedObjectContext:moc];
[managedPostObject setValue:[structureDictionary objectForKey:@"timestamp"] forKey:@"timestamp"];

我从远程服务器获取时间戳的格式如下:

"timestamp": 1323118064000

出于某种原因,所有时间戳值都保存为:-2147483648

我试过 INTEGER32、INTEGER64、Decimal、Double 以及字符串作为时间戳的数据类型,但都没有用。

已解决: 以下对我有用:

NSString *timeStampStr = [[structureDictionary objectForKey:@"timestamp"] stringValue]; [managedPostObject setValue:timeStampStr forKey:@"timestamp"];

最佳答案

如果您将该字段设为字符串,然后将其保存到其中会怎么样:

NSString *saveValue = [NSString stringWithFormat:@"%d", [[structureDictionary objectForKey:@"timestamp"] intValue]];

关于iphone - 在 core-data 中保存 unix timestamp 将其转换为负整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8736065/

相关文章:

ios - 删除托管对象后的核心数据故障

iphone - 带有 SQLITE 存储的核心数据 NSPredicate

iphone - 我可以动态更改 UIView 的内容吗?

iphone - 是否可以为 iphone 提供 GAE channel API?

ios - 如何计算iOS map 中多边形的面积

ios - 使用获取的结果 Controller 对删除的行进行动画处理

c# - 使用 Mono Touch 的横向 iPad 应用程序

ios - Cocos2d 边界框保持为零

ios - 无法在 SwiftUI 列表中更改 LPLinkView 的帧大小

ios - 我们可以将 NSURLRequest 直接存储到 Core Data 中吗?