0

因此,我在网上找不到任何将 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>

但是我只希望数组数据一次包含一个级别节点的值,显然问题在于当我编写时:NSArray *dataArrayContainer= [doc nodesForXPath:@"//Levels/level/data" error:nil];它将所有级别节点的数据节点放入数组 dataArrayContainer 中,这根本不是我想要的它只放置当前选定级别的数据节点。但是我似乎找不到任何方法来做到这一点,我在网上找不到任何地方显示如何将变量发送到 nodesForXPath 所以我不知道这将如何成为可能:/ 任何人?

4

1 回答 1

0

这将为您提供所有元素(级别)数据下的所有节点,其中元素“name”的值为“world1Level20”:

NSArray *nodes = [xmlDoc nodesForXPath:@"//*[contains(name,'world1Level20')]/data" error:nil];
于 2012-10-23T01:23:50.870 回答