我有一個方法讀取xml文件並將xml節點存儲在NSArray調用的*節點中的某個XPath路徑中。我想要做的是獲取數組中的每一項,並將其添加到名爲Category的具有「name」屬性的核心數據實體中。NSArray到核心數據項
我已經嘗試了多種不同的創建實體的方法,但我不確定有效執行此操作的正確方法。這是用於創建NSArray的代碼,關於如何實現這個的任何想法? (忽略NSError,我會在最終版本中解決這個問題)
- (IBAction)readCategories:(id)sender
{
NSString *xmlString = [resultView string];
NSData *xmlData = [xmlString dataUsingEncoding: NSASCIIStringEncoding];
NSXMLDocument *xmlDoc = [[NSXMLDocument alloc] initWithData:xmlData options:nil error:nil];
//XPath
NSError *err=nil;
NSArray *nodes = [xmlDoc nodesForXPath:@"//member[name='description']/value/string" error:&err];
}
編輯 - 我的循環代碼
NSArray *nodes = [xmlDoc nodesForXPath:@"//member[name='description']/value/string" error:&err];
int arrayCount = [nodes count];
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
NSXMLElement *categoryEl;
NSString *new = [catArrayController newObject];
int i;
for (i = 0; i < arrayCount; i++)
{
[categoryEl = [nodes objectAtIndex:i]];
[new setValue:[categoryEl stringValue] forKey:@"name"];
[catArrayController addObject:new];
}
[pool release];
在我的測試中,我放棄了核心數據,以便我可以學會循環訪問數組。我用新的數組代碼更新了我的問題,但它不起作用。什麼是循環訪問數組並將其添加到實體的最佳方式? – 2009-05-31 08:13:20