Core data 将CoreData对象存储到NSDictionary或NS数组中

Core data 将CoreData对象存储到NSDictionary或NS数组中,core-data,Core Data,我试图将[Sectioninfo对象]的输出存储到数组中 NSArray *currentCategory = [sectionInfo objects]; 尽管我在NSLOG上得到的输出如下: "<Catalogue: 0x6da1d20> ( entity: Catalogue; id: 0x6da1090 <x-coredata://894839B1-B485-4D64-8D46-99E388F00225/Catalogue/p3> ; d

我试图将[Sectioninfo对象]的输出存储到数组中

NSArray *currentCategory = [sectionInfo objects];
尽管我在NSLOG上得到的输出如下:

"<Catalogue: 0x6da1d20> (
    entity: Catalogue;
    id: 0x6da1090 <x-coredata://894839B1-B485-4D64-8D46-99E388F00225/Catalogue/p3> ;
    data: {\n    comments = nil;\n
                 email = nil;\n
                 name = Shorts;\n
                 phone = 0;\n
                 picture = <ffd8ffe0 00104a46 49460001 01000001 00010000 ffe10058 45786966 00004d4d 002a0000 00080002 01120003 00000001 0001>;\n
                 price = 77;\n
                 shop = Shop;\n
                 website = nil;\n})"
我只对数据部分感兴趣

如何仅提取数据部分? &然后我可以把它添加到NSArray中


感谢您的帮助

因为问题被标记为核心数据,所以我假设您谈论的是通过从NSFetchedResultsController获得的节信息

或者,你可以更简洁地说:

NSArray *dataArray = [[sectionInfo objects] valueForKey:@"data"];

它返回一个数组,其中包含将密钥应用于接收器中每个对象的结果。

首先感谢您的帮助,尽管数据不是我的属性的一部分,但我的属性从注释、电子邮件等开始,。。。前两行{实体:目录;id:0x6da1090;数据:{\n},我不知道它们是什么,也不知道如何去除它们,顺便说一句,我在尝试获取requestOK时得到了相同的结果,那么您的实体描述是什么,您从何处获取此对象?当然,您在获取时会得到相同的结果,因为您获取的是相同的对象,只是按部分分组。请提供您的实体描述,a这和您的获取请求一样好。我解决了显示我的对象的问题,我所要做的就是找到正确的NSOBJECT。从显示的角度来看,它工作得很好,尽管从显示的角度来看,NSFecthResultschangecontent没有被正确调用,因为tableview被刷新了。太好了!如果您的解决方案与此完全不同,那么回答,然后作为答案提供,并接受它。这样,其他与类似问题斗争的人可能会发现你的见解。因此,鼓励自答问题。
NSArray *sectionObjects = [sectionInfo objects];
NSMutableArray *dataArray = [NSMutableArray arrayWithCapacity:sectionObjects.count];
for (NSManagedObject *object in sectionObjects) {
    NSString *data = [object valueForKey:@"data"];
    [dataArray addObject:data];
}
NSArray *dataArray = [[sectionInfo objects] valueForKey:@"data"];