XML 문서에서 데이터를 검색하고 다차원 NSMutableArray
에 저장하려고합니다. 문제는 그 자체가 덮어 쓰는 것 같습니다.NSMutableArray 다차원 덮어 쓰기 자체
ViewDidLoad 메서드에서 배열 cols 및 행을 선언했습니다. 같은 :
rows = [[NSMutableArray alloc] init];
cols = [[NSMutableArray alloc] init];
는 XML 구문 분석 방법은 다음과 같다 : 이것은 내 XML의 문서는
- (void)parser:(NSXMLParser *)parser
didStartElement:(NSString *)elementName
namespaceURI:(NSString *)namespaceURI
qualifiedName:(NSString *)qualifiedName
attributes:(NSDictionary *)attributeDict
{
if ([elementName isEqualToString:@"song"]) {
title = [attributeDict valueForKey:@"title"];
songId = [attributeDict valueForKey:@"id"];
singer = [attributeDict valueForKey:@"author"];
theDuration = [attributeDict valueForKey:@"duration"];
theLink = [attributeDict valueForKey:@"link"];
[cols addObject: title];
[cols addObject: songId];
[cols addObject: singer];
[cols addObject: theDuration];
[cols addObject: theLink];
[rows addObject: cols];
}
}
입니다. 당신이 볼 수 있듯이 처음 2 곡의 id는 0이고 1과 2의 다음 2는 2입니다. 배열은 id로 6 개의 모든 don 객체에 0을 넣는 것처럼 보입니다.
<?xml version="1.0"?>
<Lists>
<playlist title="Quo Vadis" id="0"/>
<song title="One Perfect Day" link="m01MYOpbdIk" duration="3:15" author="Rune RK" id="0" />
<song title="two Perfect Day" link="m01MYOpbdIk" duration="3:15" author="Rune RK" id="0" />
<playlist title="Lord of the Rings" id="1"/>
<song title="three Perfect Day" link="m01MYOpbdIk" duration="3:15" author="Rune RK" id="1" />
<song title="fourth Perfect Day" link="m01MYOpbdIk" duration="3:15" author="Rune RK" id="1" />
<playlist title="Face" id="2"/>
<song title="five Perfect Day" link="m01MYOpbdIk" duration="3:15" author="Rune RK" id="2" />
<song title="six Perfect Day" link="m01MYOpbdIk" duration="3:15" author="Rune RK" id="2" />
</Lists>
나는 그것을를 출력하려면이 옵션을 사용하고 있습니다 :
NSLog(@"%@", [[rows objectAtIndex:3] objectAtIndex:1 ]);
결과를 표시 할 수 있습니까? –
행과 열을 어떻게 선언했는지 보여줄 수 있습니까 – Tony
'objectForKey :'는 사전에서 값을 검색하는 전용 메소드입니다. 'value-key :'는 "Key-Value Coding"마술이 필요한 경우에 사용됩니다. –