我有一个由不同类型组成的核心数据对象NSString,Float,NSDATA,....
<Shoplog: 0x9c78d20> (entity: Shoplog; id: 0x9c77050 <x-coredata://828289C5-E1B8-48A6-B2A0-F68B7DF21F2E/Shoplog/p5> ; data: {
categoryname = Ines;
comments = nil;
date = nil;
email = "iloveyou@gmail.com";
image = <ffd8ffe0 00104a46 49460001 01000001 00010000 ffe10058 45786966 00004d4d 002a0000 00080002 01120003 00000001 0001>;
phone = 800;
price = 9988;
shop = "";
websiteurl = "http://www.google.com";
})
问题是我想将此NSManaged对象导出到NSArray或NSDictionary中,以便将其写入文件,以便通过邮件将其发送给另一个用户,&amp;从他的应用程序打开它。
所以每当我试图使用此代码时
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *filePath = [documentsDirectory stringByAppendingPathComponent:@"Shoplog.slog"];
[savedData writeToFile:filePath atomically:YES];
它给了我一个非常小的文件135bytes,无论选择的NSManagedObject有多大,我得到相同的大小。
我需要帮助来了解发生了什么问题? 我想1解决方案: 1-使用KVC方法将NsManagedObject传输到NSMutableArray
虽然我仍然相信这个问题有一个更聪明的解决方案,所以如果有人可以帮助我会感激。
谢谢
答案 0 :(得分:4)
我在以下链接中有我的答案,它很容易实现,只需按照步骤操作即可 Serializing (Archiving/Unarchiving) an NSManagedObject Graph