Storing NSObject using NSKeyedArchiver/ NSKeyedUnarchiver
I have a class object like; BookEntity.h import <Cocoa/Cocoa.h> @interface BookEntity : NSObject<NSCoding> { NSString *name; NSString *surname; NSString *email; } @property(copy) NSString *name,*surname,*email; @end BookEntity.m #import "BookEntity.h" @implementation BookEntity @synthesize name,surname,email; - (void) encodeWithCoder: (NSCoder *)coder { [coder encodeObject: self forKey:@"appEntity"]; } - (id) initWithCoder: (NSCoder *)coder { if (self = [super init]) { self = [coder decodeObjectForKey:@"appEntity"]; } return self; } and I assign some values to this class, BookEntity *entity =