使用子节点进行XML解析

时间:2011-04-06 10:49:05

标签: iphone ios4 nsxmlparser

我需要一些关于XML解析的指导。在我的情况下,我必须解析它看起来像

的XML
-<food-drive>
−<coordinator cordid="4">
       <name>Luis Abarca</name>
       <teamname>A parents</teamname>
       <target>$3,500.00</target>
       <received>$0.00</received>
       −<image>
        alink
       </image>
−<teammember count="1">
   −<member memid="3">
      <membername>Rub</membername>
      <email>ssn@gmail.com</email>
      <phone>(323) 807-3920</phone>
   </member>
</teammember>
</coordinator>
−<coordinator cordid="9">
     <name>Jani</name>
     <teamname>Woori's LA Keeper</teamname>
     <target>$200.00</target>
     <received>$0.00</received>
     −<image>
          alink
     </image>
</coordinator>
−<coordinator cordid="11">
    <name>Jan</name>
    <teamname>Woori LA Keeper</teamname>
    <target>$200.00</target>
    <received>$0.00</received>
   −<image>
       alink
    </image>
</coordinator>
−<coordinator cordid="13">
   <name>Julio Torres</name>
   <teamname>Our Town El Sereno</teamname>
   <target>$1,000.00</target>
   <received>$0.00</received>
  −<image>
      alink
   </image>
</coordinator>
</food-drive>

此处,标签[coordinator]是主标签,标签[teammember]是内部标签,但此标签很少出现。现在我想解析这个xml并存储数据。我很困惑如何存储数据,因为[coordinator]标签可能有多个[teammember]标签!有什么建议吗?

1 个答案:

答案 0 :(得分:2)

保留一个可变数组的团队成员和一个指向“当前”的对象。

如果你正在使用内置的XML解析器,你可以在didStartElement:中分配并将新的团队成员放入数组中,并将对象设置为指向它。

这样,与团队成员相关的后续条目就能够解决该对象以填充数据。