如何使用目标c从xml中获取数据?

时间:2011-12-13 09:52:36

标签: objective-c ios4

我的xml结构如下

<xml_api_reply version="1">
    <weather module_id="0" tab_id="0" mobile_row="0" mobile_zipped="1" row="0" section="0">
    <forecast_information>
    <city data="Chennai, Tamil Nadu"/>
    <postal_code data="chennai"/>
    <forecast_date data="2011-12-13"/>
    <current_date_time data="1970-01-01 00:00:00 +0000"/>
    <unit_system data="US"/>
    </forecast_information>
    <current_conditions>
    <condition data="Haze"/>
    <temp_f data="84"/>
    <temp_c data="29"/>
    <humidity data="Humidity: 58%"/>
    <icon data="/ig/images/weather/haze.gif"/>
    <wind_condition data="Wind: NE at 13 mph"/>
    </current_conditions>
     </weather >
</xml_api_reply>

如何获取此数据并将其存储在数组中?

2 个答案:

答案 0 :(得分:0)

实际上你正在使用具有属性的XML ....也很容易。您可以参考此Link: -

喜欢

if([elementName isEqualToString:@"city"]) {

  NSString *urlValue=[attributeDict valueForKey:@"data"]; 
}

希望这有助于你... :))  如果没有,那么告诉我,我会尽力帮助你。

答案 1 :(得分:0)

我建议使用像KissXML(https://github.com/robbiehanson/KissXML)这样的框架来为你解析XML。

DDXMLDocument *myXmlDoc = [DDXMLDocument alloc] initWithXMLString:myXmlString options:options error:nil];

NSArray *elements = [[myXmlDoc rootElement] elementsWithName:@"forecast_information"];
...
do stuff with the elements

有关KissXML的文档,您可以在NSXML上阅读Apple的文档,因为KissXML是在此之后建模的