所以,我找不到任何在线教程来解析xml文档到数组的方法,所以我试着用这种方式自己实现它:
NSMutableArray *data = [[[NSMutableArray alloc] init] autorelease];
NSString *filePath = [self dataFilePath:FALSE forWorld:world];
NSLog(@"filePath = %@",filePath);
NSData *xmlData = [[NSMutableData alloc] initWithContentsOfFile:filePath];
NSError *error;
GDataXMLDocument *doc = [[GDataXMLDocument alloc] initWithData:xmlData options:0 error:&error];
if (doc == nil) {return nil; NSLog(@"xml file is empty!");}
NSLog(@"Loading %@", filePath);
NSArray *dataArray = [doc nodesForXPath:@"//Levels/level" error:nil];
NSLog(@"Array Contents = %@", dataArray);
for (GDataXMLElement *element in dataArray) {
NSArray *dataArrayContainer= [doc nodesForXPath:@"//Levels/level/data" error:nil];
NSMutableArray *rowArray = [NSMutableArray array];
int i=0;
int j;
for (GDataXMLElement *element in dataArrayContainer) {
NSArray *dataPointArray = [element elementsForName:@"p"];
if (dataPointArray.count > 0 && i <= dataPointArray.count) {
NSLog(@"current i is %i",i);
GDataXMLElement *dataArrayElement = (GDataXMLElement *) [dataPointArray objectAtIndex:i];
NSNumber* dataElement = [NSNumber numberWithInt:[[dataArrayElement stringValue] intValue]];
[data addObject: dataElement];
i++;
}
}
Level *level = [[Level alloc] initWithdata:data];
[levels.levels addObject:level];
}
我的xml看起来像这样:
<Levels>
<level>
<name> world1Level1 </name>
<number> 1 </number>
<unlocked> 1 </unlocked>
<cheeses> 0 </cheeses>
<data>
<p>3</p><p>9</p><p>6</p><p>9</p><p>3</p><p>1</p><p>0</p><p>15</p><p>25</p><p>0</p><p>0</p>
</data>
<blocks>
<row> <b>0</b> <b>0</b> <b>1</b> <b>15</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>1</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>1</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>1</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>1</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>1</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>1</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>1</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>1</b> <b>0</b> <b>0</b> </row>
</blocks>
</level>
<level>
<name> world1Level2 </name>
<number> 2 </number>
<unlocked> 0 </unlocked>
<cheeses> 0 </cheeses>
<data>
<p>3</p><p>9</p><p>6</p><p>9</p><p>3</p><p>1</p><p>0</p><p>15</p><p>25</p><p>0</p><p>0</p>
</data>
<blocks>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
</blocks>
</level>
<level>
<name> world1Level3 </name>
<number> 3 </number>
<unlocked> 0 </unlocked>
<cheeses> 0 </cheeses>
<data>
<p>3</p><p>9</p><p>6</p><p>9</p><p>3</p><p>1</p><p>0</p><p>15</p><p>25</p><p>0</p><p>0</p>
</data>
<blocks>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
</blocks>
</level>
<level>
<name> world1Level4 </name>
<number> 4 </number>
<unlocked> 0 </unlocked>
<cheeses> 0 </cheeses>
<data>
<p>3</p><p>9</p><p>6</p><p>9</p><p>3</p><p>1</p><p>0</p><p>15</p><p>25</p><p>0</p><p>0</p>
</data>
<blocks>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
</blocks>
</level>
<level>
<name> world1Level5 </name>
<number> 5 </number>
<unlocked> 0 </unlocked>
<cheeses> 0 </cheeses>
<data>
<p>3</p><p>9</p><p>6</p><p>9</p><p>3</p><p>1</p><p>0</p><p>15</p><p>25</p><p>0</p><p>0</p>
</data>
<blocks>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
</blocks>
</level>
<level>
<name> world1Level6 </name>
<number> 6 </number>
<unlocked> 0 </unlocked>
<cheeses> 0 </cheeses>
<data>
<p>3</p><p>9</p><p>6</p><p>9</p><p>3</p><p>1</p><p>0</p><p>15</p><p>25</p><p>0</p><p>0</p>
</data>
<blocks>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
</blocks>
</level>
<level>
<name> world1Level7 </name>
<number> 7 </number>
<unlocked> 0 </unlocked>
<cheeses> 0 </cheeses>
<data>
<p>3</p><p>9</p><p>6</p><p>9</p><p>3</p><p>1</p><p>0</p><p>15</p><p>25</p><p>0</p><p>0</p>
</data>
<blocks>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
</blocks>
</level>
<level>
<name> world1Level8 </name>
<number> 8 </number>
<unlocked> 0 </unlocked>
<cheeses> 0 </cheeses>
<data>
<p>3</p><p>9</p><p>6</p><p>9</p><p>3</p><p>1</p><p>0</p><p>15</p><p>25</p><p>0</p><p>0</p>
</data>
<blocks>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
</blocks>
</level>
<level>
<name> world1Level9 </name>
<number> 9 </number>
<unlocked> 0 </unlocked>
<cheeses> 0 </cheeses>
<data>
<p>3</p><p>9</p><p>6</p><p>9</p><p>3</p><p>1</p><p>0</p><p>15</p><p>25</p><p>0</p><p>0</p>
</data>
<blocks>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
</blocks>
</level>
<level>
<name> world1Level10 </name>
<number> 10 </number>
<unlocked> 0 </unlocked>
<cheeses> 0 </cheeses>
<data>
<p>3</p><p>9</p><p>6</p><p>9</p><p>3</p><p>1</p><p>0</p><p>15</p><p>25</p><p>0</p><p>0</p>
</data>
<blocks>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
</blocks>
</level>
<level>
<name> world1Level11 </name>
<number> 11 </number>
<unlocked> 0 </unlocked>
<cheeses> 0 </cheeses>
<data>
<p>3</p><p>9</p><p>6</p><p>9</p><p>3</p><p>1</p><p>0</p><p>15</p><p>25</p><p>0</p><p>0</p>
</data>
<blocks>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
</blocks>
</level>
<level>
<name> world1Level12 </name>
<number> 12 </number>
<unlocked> 0 </unlocked>
<cheeses> 0 </cheeses>
<data>
<p>3</p><p>9</p><p>6</p><p>9</p><p>3</p><p>1</p><p>0</p><p>15</p><p>25</p><p>0</p><p>0</p>
</data>
<blocks>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
</blocks>
</level>
<level>
<name> world1Level13 </name>
<number> 13 </number>
<unlocked> 0 </unlocked>
<cheeses> 0 </cheeses>
<data> </data>
</level>
<level>
<name> world1Level14 </name>
<number> 14 </number>
<unlocked> 0 </unlocked>
<cheeses> 0 </cheeses>
<data>
<p>3</p><p>9</p><p>6</p><p>9</p><p>3</p><p>1</p><p>0</p><p>15</p><p>25</p><p>0</p><p>0</p>
</data>
<blocks>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
</blocks>
</level>
<level>
<name> world1Level15 </name>
<number> 15 </number>
<unlocked> 0 </unlocked>
<cheeses> 0 </cheeses>
<data>
<p>3</p><p>9</p><p>6</p><p>9</p><p>3</p><p>1</p><p>0</p><p>15</p><p>25</p><p>0</p><p>0</p>
</data>
<blocks>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
</blocks>
</level>
<level>
<name> world1Level16 </name>
<number> 16 </number>
<unlocked> 0 </unlocked>
<cheeses> 0 </cheeses>
<data>
<p>3</p><p>9</p><p>6</p><p>9</p><p>3</p><p>1</p><p>0</p><p>15</p><p>25</p><p>0</p><p>0</p>
</data>
<blocks>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
</blocks>
</level>
<level>
<name> world1Level17 </name>
<number> 17 </number>
<unlocked> 0 </unlocked>
<cheeses> 0 </cheeses>
<data>
<p>3</p><p>9</p><p>6</p><p>9</p><p>3</p><p>1</p><p>0</p><p>15</p><p>25</p><p>0</p><p>0</p>
</data>
<blocks>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
</blocks>
</level>
<level>
<name> world1Level18 </name>
<number> 18 </number>
<unlocked> 0 </unlocked>
<cheeses> 0 </cheeses>
<data>
<p>3</p><p>9</p><p>6</p><p>9</p><p>3</p><p>1</p><p>0</p><p>15</p><p>25</p><p>0</p><p>0</p>
</data>
<blocks>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
</blocks>
</level>
<level>
<name> world1Level19 </name>
<number> 19 </number>
<unlocked> 0 </unlocked>
<cheeses> 0 </cheeses>
<data>
<p>3</p><p>9</p><p>6</p><p>9</p><p>3</p><p>1</p><p>0</p><p>15</p><p>25</p><p>0</p><p>0</p>
</data>
<blocks>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
</blocks>
</level>
<level>
<name> world1Level20 </name>
<number> 20 </number>
<unlocked> 0 </unlocked>
<cheeses> 0 </cheeses>
<data>
<p>3</p><p>9</p><p>6</p><p>9</p><p>3</p><p>1</p><p>0</p><p>15</p><p>25</p><p>0</p><p>0</p>
</data>
<blocks>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
<row> <b>0</b> <b>0</b> <b>0</b> <b>0</b> <b>0</b> </row>
</blocks>
</level>
</Levels>
但是我只希望数组数据一次包含来自一个Level节点的值,显然这个问题是当我写:NSArray *dataArrayContainer= [doc nodesForXPath:@"//Levels/level/data" error:nil];
时,它将数据节点从所有级别节点放入数组dataArrayContainer,这根本不是我想要它只从当前选定的级别放置数据节点。但是我似乎无法找到任何方法来做到这一点,我找不到在线的任何地方,它显示如何将变量发送到nodesForXPath,所以我不知道这是怎么可能的:/一手任何人?
答案 0 :(得分:0)
这将使用元素&#34; name&#34;为所有元素(级别)提供数据下的所有节点。使用值&#34; world1Level20&#34;:
NSArray *nodes = [xmlDoc nodesForXPath:@"//*[contains(name,'world1Level20')]/data" error:nil];