ios - 从核心数据数组对象创建新数组?

标签 ios objective-c core-data

我目前正在研究核心数据,我有以下代码

NSManagedObjectContext *managedObjContxt = [self managedObjectContext];
NSFetchRequest *fetchReq = [[NSFetchRequest alloc] initWithEntityName:@"BDEvent"];
NSMutableArray *fetchedObj= [[managedObjContxt executeFetchRequest:fetchReq error:nil] mutableCopy];

现在我的 fetchedObj 数组包含

<_PFArray 0x7b78d4e0>(
<BDEvent: 0x7b78cf40> (entity: BDEvent; id: 0x7b78be60 <x-coredata://066794C5-FA98-4D76-B306-C62CF65563F2/BDEvent/p1> ; data: {
    name = rock;
    status = "D1";
    timestamp = "18-02-2015 12:10:10";
}),
<BDEvent: 0x7b78d1f0> (entity: BDEvent; id: 0x7b78be70 <x-coredata://066794C5-FA98-4D76-B306-C62CF65563F2/BDEvent/p2> ; data: {
    name = Illa;
    status = "D1";
    timestamp = "18-02-2015 12:15:01";
}),
<BDEvent: 0x7b78d290> (entity: BDEvent; id: 0x7b78be80 <x-coredata://066794C5-FA98-4D76-B306-C62CF65563F2/BDEvent/p3> ; data: {
    name = john;
    status = "EXIT|D2";
    timestamp = "18-02-2015 12:25:05";
})
)

现在我想根据状态创建 2 个数组

Array1 将包含没有 EXIT 状态的时间戳值,Array2 将包含具有 EXIT 状态的时间戳值。

如何实现?

最佳答案

要获取带有“退出”代码的数组,请像这样向您的提取请求添加谓词。

    NSManagedObjectContext *managedObjContxt = [self managedObjectContext];
    NSFetchRequest *fetchReq = [[NSFetchRequest alloc] initWithEntityName:@"BDEvent"];

//add this line
    fetchReq.predicate = [NSPredicate predicateWithFormat:@"status contains 'EXIT'"];


    NSMutableArray *fetchedObj= [[managedObjContxt executeFetchRequest:fetchReq error:nil] mutableCopy];

要获取没有“EXIT”代码的数组,请使用以下谓词,

  fetchReq.predicate = [NSPredicate predicateWithFormat:@"NOT (status contains 'EXIT')"];

关于ios - 从核心数据数组对象创建新数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28583927/

相关文章:

ios - 在保持图像质量的同时将 UIImage 剪切到自定义 UIBezierPath

ios - 如何让 Apple 登录在 iOS 15 模拟器中正常工作?

ios - NSPredicate : to-Many relationship with date iOS

iphone - 查找 GPS 信号强度

iphone - 这个 NSPersistentStoreCoordinator 没有持久存储。它不能执行保存操作

swift - 创建新的 NSManagedObject 并将其分配给新的 NSManagedObject *有时*会失败

ios - 异常 'NSInternalInconsistencyException' ,原因 : 'Could not load NIB in bundle: . ..有人可以找出这有什么问题吗

ios - 将 token 发送到服务器 Swift 3

iphone - 仅对 subview 启用 UserInteraction

objective-c - iPhone 4 iOS 5 NSFetchedResultsController 如何选择批量大小?