读取Core Data中的整数

时间:2015-07-06 16:00:17

标签: core-data nsinteger

在我的应用中,我有一个名为状态核心数据实体,其中两个属性messageID为Integer32,messageText为String。

我有一个存储在SQL数据库中的字符串,应用程序在启动时下载。数据库中的字符串分为ID和文本两部分。示例消息可以是 011-Hello ,每个部分都存储在名为messageParts的数组中。数组中的第一项是ID:

NSInteger newMessageID = [messageParts[0] integerValue];

我想将此ID与存储在Core Data中的ID进行比较,例如:

if (messageID == newMessageID)

我得到newMessageID很好,我有一个数字可以使用,但我对如何处理来自核心数据的数据类型感到困惑。我可以看到数据库中有一个使用SQLlitebrowser的编号,我尝试过:

NSInteger *savedMessageID = [[self.status objectAtIndex:0] messageID]; 

NSInteger savedMessageID = [[self.status objectAtIndex:0] messageID]; 

但是既不返回存储的值。我认为这是一个指针问题,但我在这里绕圈子。任何帮助非常感谢。

1 个答案:

答案 0 :(得分:1)

如果从xcdatamodeld生成NSManagedObject子类(Xcode菜单编辑器>创建NSManagedObject子类...),您会发现integer32字段是作为NSNumber生成的......

这可能是你应该看看的地方?