안녕 난 CoreData에 다음 MultableArray의 데이터베이스에서 오는 값을 저장하고 오전 :CoreData에 저장된 문자열은 <null>과 문자열을 반환합니다. 왜?
NSMultableArray *mutary = [[NSMultableArray alloc] init];
NSManagedObjectContext *context = [app managedObjectContext];
for(int n=0; n<[AttributeArray count]; n++)
{
[mutary addObject:[[AttributeArray objectAtIndex:n] objectForKey:@"AttributName"]];
NSLog(@"%@", mutary);
}
attributeString = [mutary componentsJoinedByString:@","];
raume = [NSEntityDescription insertNewObjectForEntityForName:@"Raum" inManagedObjectContext:context];
raume.raumattribut = attributeString;
if (![context save:&error]) {
NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
abort();
}
MultableArray에 대한NSLog 출력은 다음과 같습니다
는2012-06-20 17:21:00.047 book-app[31984:15803] (
A7OVERHEAD,
Beamer
)
지금까지의 올바른 작업 . 데이터베이스의 두 가지 예상 값이 이제 Array에 있습니다. 지금은 CoreData에서 이러한 특성을 가져 오는 오전 :
NSManagedObjectContext *context = [app managedObjectContext];
NSFetchRequest *request = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Raum" inManagedObjectContext:context];
[request setEntity:entity];
NSError *error = nil;
NSArray *events = [context executeFetchRequest:request error:&error];
for (Raum *att in events)
{
stringAttribute = [[events valueForKey:@"raumattribut"] componentsJoinedByString:@","];
NSLog(@"ATTRIBUTE: %@", stringAttribute);
}
}
를 지금까지 너무 좋아. 하지만 지금 내 NSLog 출력을 보면 :
2012-06-20 17:21:00.055 book-app[31984:15803] ATTRIBUTE: <null>,A7OVERHEAD,Beamer
CoreData가 반환 된 다음 두 값이 반환됩니다. 그게 어디서 오는거야?
누군가 도움을 줄 수 있습니까? 사전에
감사
를 사용하는 위의 코드 샘플을 편집 한 놓쳤다. 다른 해결책이 있습니까? – Paks
내 대답을 편집했습니다. raumattribut 속성이 어떤 유형인지, componentsJoinedByString이 적절한 지 여부는 확실하지 않지만 –
이 작동하지 않습니다. 내가 얻을 수있는 오류 : - [NSCFString componentsJoinedByString] 인식 할 수없는 선택기 .. "raumattribute"는 NSString이고 왜 [att valueForKey : @ "raumattribut"] 대신 [[valueForKey : @ "raumattribut]] – Paks