我有我想從各個節點的結構中使用的屬性,像這樣的XML文檔:如何正確循環遍歷所有XML節點?
<level1 attr1="value" attr2="value">
<level2 attr3="value">
<level3 attr1="value" attr3="value">
</level3>
</level2>
<level2 attr3="value">
<level3 attr1="value" attr3="value">
</level3>
</level2>
<level2 attr3="value">
<level3 attr1="value" attr3="value">
</level3>
</level2>
</level1>
<level1>
....
</level1>
我在文件中的每個節點試圖循環並記錄從屬性的信息。
代碼:
Dim xml As New XDocument
Dim root As New XElement
xml = XDocument.Load(myFileLoc)
root = xml.Root
For Each level1 in root.Descendants()
'Do Something with level1 attr'
For Each level2 in level1.Descendants()
'Do Something with level2 attr'
For Each level3 in level2.Descendants()
'Do Something with level3 attr'
Next
Next
Next
我學得很快,通過整個文檔幾次這將循環,因爲1級在root.Descendants()
也將是所有兒童level2s和level3s。
如何將每個level1/level2/level3限制爲僅當前節點深度?或者,我應該如何做這種工作?
是否使用'元素()',而不是'後裔()'你想要什麼? – Mark
是的,這正是我所需要的。謝謝Mark! – h01001000