2016-11-15 99 views
0

我有一个问题,我希望会很快。我使用SWXMLHash为Swift解析eBay API返回的XML。一些回报变得非常冗长。SWXMLHash紧凑的根元素

如:

xml["findCompletedItemsResponse"][“searchResults"][“item”]...[“sellerID"].element?.text 

我怎么会去压缩这样说的:

xml[rootVar][“item”]...[“sellerID"].element?.text 

有没有在这个实例来说明此问题的方法?我曾尝试(这显然不工作):

let xml = SWXMLHash.config { 
    config in 
    config.shouldProcessLazily = true 
    config.shouldProcessNamespaces = true 
    rootElementName = "findCompletedItemsResponse" 
}.parse(response); 

回答

0

我建议做这样的事情:

let rootXml = xml["findCompletedItemsResponse"]["searchResults"] 
// ... 
let sellerID = rootXml["item"]...["sellerID"].element?.text 

每个索引的水平可以保存断成变量 - 它只是XMLIndexer实例已被索引下降到一定水平。

希望这会有所帮助!

+0

是的。谢谢!对于使用Swift的XML来说并不陌生,并且太过专注于森林,我没有看到明显的树。您的SWXMLHash创建得非常好。感谢您分享这个不错的工具,同时也支持您的支持! –