iphone - 在 iPhone SDK 中使用 CoreData 存储 longLong 值

标签 iphone core-data

我正在尝试使用 Core Data 存储 long long 值。像 119143881477165 这样的值。我将该值存储在 NSNumber 中,该值是使用便捷方法 numberWithUnsignedLongLong 创建的。 Core Data 元数据将此字段的类型设置为 int64。该数字已正确存储,但是当我使用 unsignedLongLongValue 检索该数字时,该值被截断。

有什么建议吗?

最佳答案

你说它被截断了......你将值存储在什么类型的原语中?如果您使用的是 NSUInteger,您所在的平台可能会将其定义为 unsigned int,而不是 unsigned long >.

如果您明确想要一个long long,则使用long long

以下内容按预期工作:

unsigned long long number = 119143881477165;
NSNumber * numberValue = [NSNumber numberWithUnsignedLongLong:number];
unsigned long long extracted = [numberValue unsignedLongLongValue];

NSLog(@"original: %llu", number);
NSLog(@"extracted: %llu", extracted);

它记录:

2010-10-04 00:39:25.103 EmptyFoundation[790:a0f] original: 119143881477165

2010-10-04 00:39:25.106 EmptyFoundation[790:a0f] extracted: 119143881477165

关于iphone - 在 iPhone SDK 中使用 CoreData 存储 longLong 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3853243/

相关文章:

iphone - UIAlertView 后台问题?

ios - 应用程序尝试使用 Storyboard以模态方式呈现事件 Controller

iphone - 导入新类包或“系统”的最佳方法?

ios - xCode 7.0 IOS9 SDK : deadlock while executing fetch request with performBlockAndWait

iphone - NSManagedObjectContext 的 performBlockAndWait : not executing on the receiver's queue

ios - 如何将数据预加载到 iOS 的数据库中?

iphone - 使 UIImageView 立即跟随手指位置而没有任何延迟?

iphone - 自定义 UIView 子类作为 UIViewController 属性

ios - 最佳实践 : ListView - DetailView. 加载更多结果

macos - Cocoa 绑定(bind) - 收到 "deallocated while key value observers were still registered"警告