How to save a NSArray/NSMutableArray in Core Data
Any class you have which conforms to the NSCoding protocol can be serialized and archived in this way. NSArray/NSMutableArray already conform this protocol. Its important to say that all of objects of the array must conform too.
If you have in your model an entity with a property of type 'Binary Data', you can store in it the array data by doing:
[...]
NSData *arrayData = [NSKeyedArchiver archivedDataWithRootObject:TheArray];
myEntity.arrayProperty = arrayData;
[self saveContext]; //Self if we are in the model class
[...]
Then you can retrieve all the original array info by doing the opposite operation:
[...]
NSMutableArray *array = [NSKeyedUnarchiver unarchiveObjectWithData:anEntity.arrayProperty];
[...]
Written by Juan Fernández Sagasti
Related protips
8 Responses
Add your response
Add your response
Yes, Its works for storing array of NSObject in transformable field.
but Is is possible to store array of NSManagedObject in transformable field?
i tried it but its giving an error.
please help me.
Thanks in advance.
over 1 year ago
·
Have a fresh tip? Share with Coderwall community!
Post
Post a tip
Sponsored by #native_company# — Learn More
#native_title#
#native_desc#