如何将所有字典存储在数组中

萨克·辛格(Sakshi Singh)

我有一个包含国家和代码的xml文件。我把xml放在Demo.xml中。我的问题是只保存了第一个字典。或者任何人都可以告诉我其他解析方式,例如使用nsxml或gdata

NSString *filePath=[[NSBundle mainBundle] pathForResource:@"Demo" ofType:@"xml"];
NSData *data=[NSData dataWithContentsOfFile:filePath];
addArray=[[NSMutableArray alloc]init];
dictData=[[NSMutableDictionary alloc]init];


TBXML *tbxml = [TBXML tbxmlWithXMLData: data];
TBXMLElement *rootXMLElement=tbxml.rootXMLElement;

TBXMLElement *rootElemnt=[TBXML childElementNamed:@"root" parentElement:rootXMLElement];
while (rootElemnt!=nil) {

    TBXMLElement *item = [TBXML childElementNamed:@"item" parentElement:rootElemnt];

    if (item!=nil) {
        TBXMLElement *country = [TBXML childElementNamed:@"country" parentElement:item];
        TBXMLElement *code = [TBXML childElementNamed:@"code" parentElement:item];

        dictData=[NSMutableDictionary dictionaryWithObjectsAndKeys:[TBXML textForElement:country],@"country",[TBXML textForElement:code],@"code",nil];
        rootElemnt = [TBXML nextSiblingNamed:@"item" searchFromElement:rootElemnt];

        [addArray addObject:dictData];
    }
}
NSLog(@"====%@",addArray);

输出是:

====(
        {
            code = 355;
            country = Albania;
        }
    )

这是xml https://www.dropbox.com/s/x4zpxgi42h0rllz/Demo.xml的链接

杰罗姆·迪亚兹(Jerome Diaz)

未经测试,但

NSString *filePath=[[NSBundle mainBundle] pathForResource:@"Demo" ofType:@"xml"];
NSData *data=[NSData dataWithContentsOfFile:filePath];
addArray=[[NSMutableArray alloc]init];
dictData=[[NSMutableDictionary alloc]init];


TBXML *tbxml = [TBXML tbxmlWithXMLData: data];
TBXMLElement *rootXMLElement=tbxml.rootXMLElement;

TBXMLElement *rootElemnt=[TBXML childElementNamed:@"root" parentElement:rootXMLElement];
if (rootElemnt) {
    TBXMLElement *item = [TBXML childElementNamed:@"item" parentElement:rootElemnt];

    while (item) {

        TBXMLElement *country = [TBXML childElementNamed:@"country" parentElement:item];
        TBXMLElement *code = [TBXML childElementNamed:@"code" parentElement:item];

        dictData=[NSMutableDictionary dictionaryWithObjectsAndKeys:[TBXML textForElement:country],@"country",[TBXML textForElement:code],@"code",nil];

        [addArray addObject:dictData];
        item = [TBXML nextSiblingNamed:@"item" searchFromElement:item];
    }
}
NSLog(@"====%@",addArray);

应该管用

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何将所有edittext值存储在数组列表中

如何将所有选中的复选框类名称存储在数组中?

循环文件时如何将所有答案存储在数组中

如何将所有CustomListView项目存储在数组中

如何将单选按钮的值存储在数组中

如何将值存储在数组 Jquery 中?

如何将WebElement存储在数组中

如何将数据存储在数组中,使用函数

如何将函数指针存储在数组中?

Rust如何将枚举值存储在数组中?

如何将选定的单选按钮存储在数组中?

如何将数字存储在数组中?

如何将引用存储在数组中?

如何将类型存储在数组中?

如何将解析后的数据存储在数组中?

如何将接收到的数据存储在数组中?

如何将文件内容存储在数组中?

Java如何将JOptionPane值存储在数组中

如何将值存储在数组中,遍历树?

我如何将所有循环变量存储在 python 字典中以在 django 中使用

我如何将所有id的值保存在数组中?

如何将字典数组存储到类变量中?

如何将所有数组存储在 for 循环输出中

列搜索后如何将所有DataTable的数据存储在javascript数组中?

如何将字典值从字典数组快速存储到数组中

从.data文件读取到Java中,如何将信息存储在数组数组中?

如何使用Soap Web Service iOS字典将值存储在数组中

如何将具有相同属性的所有字典从数组转换为新数组?

如何从字典中获取保留在数组中的所有键