我有一个带有递归元素的文档XML,如下所示:
<Category id="IND">
<Name>father</Name>
<Category id="IND_TURN_ORD">
<Name>child1</Name>
<Category id="IND_TURN_ORD">
<Name> child of the child </Name>
</Category>
</Category>
</Category>
如何为此文档创建递归解析器?
这是我试过的代码:
当我找到elementName ==&#34;类别&#34;
func parser(parser: NSXMLParser!, didStartElement elementName: String!, namespaceURI: String!, qualifiedName qName: String!, attributes attributeDict: [NSObject : AnyObject]!) {
if (elementName == "Category") && (!categoryIsOpen){
println(“found child“)
currentChildOpen++
categoryIsOpen = true
Category.listCategory[countCategory].append(Category())
// Call recursive func
}
}
现在我应该调用递归函数,创建一个循环并查看它是否有子类。 但我不知道要切换到什么,以及ogetto如何循环。
有人建议吗?感谢编辑:
这是我的班级类别:
class Category: NSObject {
var attributeID:NSString = ""
var nameCategory:NSString = "nameNotFound"
var hasChild = false
var isOpen = false
var level = 0
//var children:[Category] = []
var children = [Category]()
}
我接受快速和客观的建议-C
由于