将NSDate插入CoreData时出错

时间:2014-02-02 21:49:47

标签: ios core-data nsdate

    NSDateFormatter *dt = [[NSDateFormatter alloc] init];
    [dt setDateFormat:@"dd-MM-yyyy"];
    NSDate *bdate = [dt dateFromString:@"02-02-2013"];
    [nouContacte setValue:bdate forKey:@"birthday"];

我不明白为什么该代码不起作用。它插入了9个不同的数字,如318366000。 我可以插入字符串,“布尔”,数字,但我不能约会。

coredata中的

生日字段是日期类型。

任何想法?

1 个答案:

答案 0 :(得分:4)

对于“日期”属性,Core Data存储SQLite文件中的“自2001年1月1日以来的秒数,GMT”,即您获得的内容

[bdate timeIntervalSinceReferenceDate]

例如,2011-02-02 19:00:00 +0000存储为数字318366000

但这是一个实现细节,你不应该担心它。 从SQLite文件中读取对象时,将转换回NSDate