我將添加到以下線程,但這會違反論壇規則「但請避免要求幫助」。 how to identify for the xml end tag while parsing using DOM?如何在XML DOM節點樹中確定元素的結尾
在上面的線程中的問題也是我的。另一種方法是知道如何捕獲「GroupName」,並且每個組中的每個組都繞過<歷史記錄> </History>中的所有信息。
我正在使用Excel 2016 VBA。 KeePass XML沒有已知的模式。
下面列出了一個由KeePass XML文件的高級元素組成的簡單節點樹,以提供一些清晰的表象。爲簡單起見,入口細節(兒童)和大多數節點被忽略。
<KeePassFile>
<Root>
<Group>
<Group>
<Name>GroupName</Name>
<Entry>
<History>
<Entry>
</Entry>
<Entry>
</Entry>
</History>
</Entry>
<Entry>
</Entry>
</Group>
</Group>
<DeletedObjects />
</Root>
</KeePassFile>
原因我嘗試加載使用Excel VBA與XML DOM庫KeePass的XML文件到Excel中。似乎沒有模式,各種「級別」使用相同的節點E.G.我嘗試使用XPath,但無處可去。 getElementsByTagName看起來很有希望,甚至可以用於兩個元素,但是當第二個條目完成時,parent.nextsibliing就會陷入僵局。
由於<歷史> </History>之間沒有任何信息,所以我可以確定下一個兄弟和下一個兄弟,並使用到達的兩個節點中的第一個「確定」結束。
我也可以假定所有緊跟</Entry>的元素都已知並使用它們。我知道<條目>,<歷史記錄>和< DeletedObjects>但其他可能存在。
最好包含一些您已經嘗試過的代碼,並準確描述問題所在。現在你的問題看起來像一個非常標準的XML解析練習,沒有棘手的部分。 –