nodesForXpath并不总是有效

时间:2013-11-14 21:55:49

标签: ios objective-c xml nodes xmlnode

我在iOS广播应用程序中使用以下代码:

nodes = [rootNode nodesForXPath:@"child::Station[Genres/Genre='Pop']" error:nil];

使用XML中的流派“POP”获取所有电台。例如,其中一个电台将是:

    <Station>
<Name>(Top 40)</Name>
<Description>(Top 40)</Description>
<Genres><Genre>Pop</Genre></Genres>
<Logos><Logo><LogoUrl>http://blogs.slj.com/connect-the-pop/files/2013/05/Theatrics-logo-small.png</LogoUrl></Logo></Logos>
<Streams><Stream><MediaType>MP3</MediaType><BitRate>128</BitRate><StreamUrl>http://relay.radio.fm:1133/;stream</StreamUrl></Stream></Streams>
<Contacts><Contact type="General"><Name>Report Trouble</Name><Email>contact@email.com</Email><Facebook>http://www.facebook.com/</Facebook></Contact></Contacts>
</Station>

但是我需要能够得到JUST的类型而不是电台,所以我不想单独使用Pop节目,我希望单独收到一个类型列表,之后我可以再有一个tableView站点在上一个视图中选择的类型中...我怎样才能获得类型?

1 个答案:

答案 0 :(得分:0)

我希望这就够了......

  nodes = [rootNode nodesForXPath:@"//Genres" error:nil];

它将收集“Genres”数组,然后

即:

输出将是:

<Genre>Pop</Genre>
<Genre>Pop1</Genre>
<Genre>Pop2</Genre>
.
.
.
.
像那样

再一次你需要“Genere”的值然后按照下面的代码

  nodes = [rootNode nodesForXPath:@"//Genre" error:nil];