array 0 = (
"<MsgForPush: 0x1d5c4260> (entity: MsgForPush; id: 0x1d5b0720 <x-coredata://A174ED32-E568-4FFE-AC00-CFD985E7D986/MsgForPush/p1> ; data: <fault>)",
"<MsgForPush: 0x1d59a450> (entity: MsgForPush; id: 0x1d598eb0 <x-coredata://A174ED32-E568-4FFE-AC00-CFD985E7D986/MsgForPush/p2> ; data: <fault>)",
"<MsgForPush: 0x1d59a500> (entity: MsgForPush; id: 0x1d5a04a0 <x-coredata://A174ED32-E568-4FFE-AC00-CFD985E7D986/MsgForPush/p3> ; data: <fault>)"
)
直接取值 data:<fault>
应该使用valueForkey来获取数据
+ (void)deleteMsginfo
{
NSManagedobjectContext *objectContext = [[AppDelegateAppDelegate] managedobjectContext];
NSEntityDescription *entity = [NSEntityDescriptionentityForName:@"MsgForPush"inManagedobjectContext:objectContext];
NSFetchRequest *fetchRequest = [[NSFetchRequestalloc] init];
[fetchRequestsetEntity:entity];
NSError *error;
NSArray *objects = [objectContext executeFetchRequest:fetchRequest error:&error];
for (MsgForPush *searchin objects) {//清空该类数据
Nsstring* alert_title = [search valueForKey:@"alert"];
NSLog(@"delete title = %@",alert_title);
[objectContextdeleteObject:search];
}
if ([objectContext hasChanges])
{
if (![objectContext save:&error])
{
NSLog(@"There was an error");
}
}
}
+(NSArray*)searchInTable:(Nsstring*)table ofAttribute:(Nsstring*)attr valued:(id)val inContext:(NSManagedobjectContext*)context//查找表table中属性attr的值为val的数据
{
NSFetchRequest* fetchRequest = [NSFetchRequest fetchRequestWithEntityName:table];
nspredicate *predicate = [nspredicate predicateWithFormat:@"(%K == %@)",attr,val];
[fetchRequest setPredicate:predicate];
NSError* error;
NSArray* result = [context executeFetchRequest:fetchRequest error:&error];
if (error) {
Nsstring* info = [Nsstring stringWithFormat:@"查询表%@中属性%@值为%@时出现错误==%@",table,val,error.description];
NSLog(@"%@",info);
}
return result;
}
//更新:直接修改对象,保存managedobjectContext就好
+ (BOOL)updateStatus:(Nsstring*)alert{
NSManagedobjectContext* context = [AppDelegate AppDelegate].managedobjectContext;
NSArray* read = [self searchInTable:@"MsgForPush" ofAttribute:dDBK_alert valued:alert inContext:context];
NSLog(@"alert == %@",alert);
NSLog(@"----read = %@",read);
[read setValue:@"1" forKey:dDBK_status];
NSError *error = nil;
if (![context save:&error]) {
NSLog(@"Unresolved error %@,%@",error,[error userInfo]);
abort();
return NO;
}
NSLog(@"update success");
return YES;
}
////////////////////// 查重的问题~~~~~
for (int i=0; i<array.count; i++)
{
//查重
for (int j=i+1; j<array.count; j++)
{
NSDictionary *inquiryDic = [array objectAtIndex:i];
NSDictionary* dic2 = [array objectAtIndex:j];
if ([[inquiryDic objectForKey:@"alert"] isEqualToString:[dic2 valueForKey:@"alert"]])
{
[array removeObjectAtIndex:j];
[objectContext delete:[array objectAtIndex:j]];
j--;
}
}
}
其它问题 更新中。。。。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。