Я пытаюсь прочитать объект coredata в NSMutableArray, но я продолжаю возвращать странные много данных. например, когда я вернусь к NSDictionary значений выглядит как этотКак читать NSArray из объекта coredata
data: {
companyName = "WPremium";
desc = "Test";
guid = "Otq12342";
install = (
"0x1e59e910 <x-coredata://BAF7B1AD-F357-455A-B9D7-1288F7D1F652/Install/p851>",
"0x1e59e8e0 <x-coredata://BAF7B1AD-F357-455A-B9D7-1288F7D1F652/Install/p848>",
"0x1e59e830 <x-coredata://BAF7B1AD-F357-455A-B9D7-1288F7D1F652/Install/p837>",
"0x1e59e930 <x-coredata://BAF7B1AD-F357-455A-B9D7-1288F7D1F652/Install/p853>",
"0x1e59e850 <x-coredata://BAF7B1AD-F357-455A-B9D7-1288F7D1F652/Install/p839>",
"0x1e59e890 <x-coredata://BAF7B1AD-F357-455A-B9D7-1288F7D1F652/Install/p843>",
"0x1e59e8b0 <x-coredata://BAF7B1AD-F357-455A-B9D7-1288F7D1F652/Install/p845>",
"0x1e59e7c0 <x-coredata://BAF7B1AD-F357-455A-B9D7-1288F7D1F652/Install/p830>",
"0x1e5957e0 <x-coredata://BAF7B1AD-F357-455A-B9D7-1288F7D1F652/Install/p829>",
"0x1e59e810 <x-coredata://BAF7B1AD-F357-455A-B9D7-1288F7D1F652/Install/p835>",
"(...and 16 more...)"
);
Я хотел бы знать, как поставить установку объект CoreData словаря в NSArray, так что я могу сортировать его. любая помощь должна быть оценена.
UPDATE вот как я называю свой объект coredata.
- (NSMutableArray *)readSelectedInstall:(NSString *)projIDString {
NSManagedObjectContext *context = [self managedObjectContext];
if (context == nil) {
NSLog(@"Nil");
}
else {
NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"InstallProject" inManagedObjectContext:context];
[fetchRequest setEntity:entity];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"projID==%@",projIDString];
[fetchRequest setPredicate:predicate];
NSError *error;
NSMutableArray *installProjectDictionaryArray = [[NSMutableArray alloc] init];
NSArray *fetchedObjects = [context executeFetchRequest:fetchRequest error:&error];
for (InstallProject *installProj in fetchedObjects) {
NSMutableDictionary *tempInstallProjectDictionaryArray = [[ NSMutableDictionary alloc] init];
[tempInstallProjectDictionaryArray setObject:installProj.companyName forKey:@"CompanyName"];
[tempInstallProjectDictionaryArray setObject:installProj.projNo forKey:@"ProjNo"];
[tempInstallProjectDictionaryArray setObject:installProj.desc forKey:@"Desc"];
[tempInstallProjectDictionaryArray setObject:installProj.guid forKey:@"GUID"];
[tempInstallProjectDictionaryArray setObject:installProj.projID forKey:@"ProjID"];
[tempInstallProjectDictionaryArray setObject:installProj.install forKey:@"install"];
[installProjectDictionaryArray addObject:tempInstallProjectDictionaryArray];
}
return installProjectDictionaryArray;
}
return nil;
}
затем возвращающегося NSMutableArray Я делаю это
NSMutableArray *getarray = [self readSelectedInstall:projIDString];
NSMutableDictionary *installsDictionary = [getarray objectAtIndex:0];
NSMutableArray *tempInstalls = [installsDictionary objectForKey:@"install"];
NSLog(@"%@", tempInstalls);
NSArray *tempSortedItemsArray = [tempInstalls sortedArrayUsingDescriptors:
@[[NSSortDescriptor
sortDescriptorWithKey:@"dp" ascending:YES],
[NSSortDescriptor
sortDescriptorWithKey:@"dc
" ascending:YES]]];
tempInstalls = [tempSortedItemsArray mutableCopy];
tempSortedItemsArray = nil;
NSLog(@"%@", tempInstalls);
, но на этой последней строке кода, где у меня есть странный выход ..
Я обновил свой вопрос, как получить объект .. Я думал, что это может помочь вам решить вопрос. – HurkNburkS
Я только что прочитал на другом квесте, вы должны использовать NSSet .. Im смотря это сейчас. – HurkNburkS
@HurkNburkS Я думаю, что вы делаете правильно. Не полагайтесь полностью на NSLog, что вы надеетесь сделать с объектом? – sbarow