如何将NS Mutable Array插入Core Data

时间:2012-07-11 14:23:20

标签: iphone objective-c xcode4.2

-(void)dataManagerDidFinishLoading:(DataManager *)datamgr
{
    NSLog(@"%@.....",datamgr);

    pageArray=[datamgr.resultDataDictionary objectForKey:@"POS_GetPageResult"];
    GetPage *page=(GetPage *)[NSEntityDescription 
                insertNewObjectForEntityForName:@"GetPage" 
                         inManagedObjectContext:managedObjectContext];

   NSError *error;
    if (![managedObjectContext save:&error]) {
        // This is a serious error saying the record could not be saved.
        // Advise the user to restart the application
        NSLog(@"Error........");
    }

    [pageArray insertObject:page atIndex:0];
}

2 个答案:

答案 0 :(得分:0)

您可以使用可转换的核心数据类型。然后您的对象将被解析为id。请记住,transformable属性将传递给NSData对象(并反转)以在核心数据中存储(或检索)。

答案 1 :(得分:0)

使用NSKeyedArchiver:

NSData *data = [NSKeyedArchiver archivedDataWithRootObject:array];

请注意,数组中的所有对象必须符合NSCoding协议。如果这些是自定义对象,那么这意味着您需要阅读Encoding and Decoding Objects。您可以将NSData作为BLOB存储在数据库中。希望这会对你有所帮助。