我想遍歷XML中與引入nokogiri一個文件夾結構,但我在這很卡:如何遍歷XML嵌套的元素與引入nokogiri在Ruby中
<test>
<folder name="Folder A">
<folder name="Folder A1">
<file name="a.txt">Cool file</file>
</folder>
<folder name="Folder A2"></folder>
</folder>
<folder name="Folder B">
<folder name="Folder B1"></folder>
<folder name="Folder B2">
<folder name="Folder B21">
<file name="b.txt"></file>
</folder>
</folder>
</test>
所以,我想遍歷這個爲了能夠創建文件夾和文件樹(文件夾A1和A2位於文件夾A內,文件夾B1和B2位於文件夾B內,文件夾B21位於文件夾B2內)。
所以我這樣做:
nodes = allnodes.xpath('//folder')
nodes.each do |node|
puts "name => #{node.attributes['name']}"
end
但這列出了我所有的文件夾(A,A1,A2,B,B1,B2,B21)。我怎麼做到這一點,以便我不檢查以前的文件夾裏面的更多文件夾,然後我發送它到相同的遞歸函數?
非常感謝您的幫助:)
你是問如何得到給定文件夾的子文件夾?例如,如果您指定了「文件夾A」,則只會獲得「A1」和「A2」? –
不錯的xml結構.. +1 –
你是什麼意思由「我怎樣才能使它,以便我不檢查以前的文件夾裏面更多的文件夾」? '//文件夾'只給你一個文件夾一次。你想做什麼? –