2014-03-12 84 views
-1

我必須將字典存儲在覈心數據中。我以前從未使用過核心數據。將NSDictionary保存在coreData中

任何人都可以幫助我,我怎樣才能在我現有的項目中使用核心數據,並用它來存儲Dictionary。

+0

- 爲此做好準備。但我不知道如何在項目中實現它。 –

+0

你見過[THIS](http://stackoverflow.com/questions/22211633/core-data-not-saving-transformable-nsmutabledictionary) –

+0

檢出:[將NSDictionary插入CoreData](http://stackoverflow.com/questions/8682324/insert-nsdictionary-into-coredata) – Amar

回答

4

的NSDictionary到核心數據一樣,你需要一些谷歌我瞭解,我必須做的歸檔和取消後做

NSMutableData *data = [[NSMutableData alloc] init]; 
    NSKeyedArchiver *archiver = [[NSKeyedArchiver alloc] initForWritingWithMutableData:data]; 
    [archiver encodeObject:yourDictionary forKey:@"dictpropertyinmanagedobject"]; 
    [archiver finishEncoding]; 
    [archiver release]; 
    [self.managedObject setValue:data forKey:@"dictpropertyinmanagedobject"]; 

的NSDictionary從核心數據

NSData *data = [[NSMutableData alloc] initWithData:[yourManagedObject valueForKey:@"dictpropertyinmanagedobject"]]; 
NSKeyedUnarchiver *unarchiver = [[NSKeyedUnarchiver alloc] initForReadingWithData:data]; 
NSDictionary *yourDictionary=[[unarchiver decodeObjectForKey:@"dictpropertyinmanagedobject"] retain]; 
[unarchiver finishDecoding]; 
+0

我可以在任何類中定義self.managedObject。 –

+1

看看這個http://stackoverflow.com/questions/8682324/insert-nsdictionary-into-coredata – Sport