当前位置: 首页 > 工具软件 > TBXML > 使用案例 >

XML遍历解析-TBXML的使用

武琛
2023-12-01

假设一段xml:

///xmlStr
/*
<A>
    <B>
        <C id='c1'>C1</C>
        <C>C2</C>
        <C>C3</C>
        <C>C4</C>
    </B>
    <B>
        <C id='c2'>C5</C>
        <C>C6</C>
        <C>C7</C>
    </B>
</A>
*/

解析出C1-C7的数组:

NSMutableArray *m_dict = [NSMutableArray array];
    NSString *xmlString = @"<A><B><C id='c1'>C1</C><C>C2</C><C>C3</C><C>C4</C></B><B><C id='c2'>C5</C><C>C6</C><C>C7</C></B></A>";
    TBXML *XML = [TBXML newTBXMLWithXMLString:xmlString error:nil];
    TBXMLElement *root = XML.rootXMLElement;
    
    TBXMLElement *elementB = [TBXML childElementNamed:@"B" parentElement:root];
    while (elementB) {
        TBXMLElement *elementC = [TBXML childElementNamed:@"C" parentElement:elementB];
        while (elementC) {
            [m_dict addObject:[TBXML textForElement:elementC]];
            elementC = [TBXML nextSiblingNamed:@"C" searchFromElement:elementC];
        }
        elementB = [TBXML nextSiblingNamed:@"B" searchFromElement:elementB];
    }
    
    for (NSString *s in m_dict) {
        NSLog(@"%@",s);
    }

输出:

C1-C7

转载于:https://www.cnblogs.com/maxfong/archive/2012/06/19/2554871.html

 类似资料: