私は次のXMLを持っています
<CallResult>
<Success>true</Success>
<Result>
<ZoneInfo>
<Id>3</Id>
<Name>test-room</Name>
<NId>sdfsdg</NId>
</ZoneInfo>
<ZoneInfo>
<Id>16</Id>
<Name>Dynamic</Name>
<NId>sadadrwed543th</NId>
</ZoneInfo>
<ZoneInfo>
<Id>32</Id>
<Name>lobby</Name>
<NId>ssdfrgfdfg</NId>
</ZoneInfo>
<ZoneInfo>
<Id>33</Id>
<Name>conf</Name>
<NId>sdfsfewr232f</NId>
</ZoneInfo>
</Result>
<Message>Success</Message>
</CallResult>
それぞれの異なる「ZoneInfo」属性が配列内のハッシュになるように、XML を解析しようとしています。
例えば
ゾーン[0] = ハッシュ[ID => 32、名前 => ロビー、NId => ssdfrgfdfg]
ゾーン[1] = ハッシュ[ID => 33、名前 => conf、NId => sdfsfewr232f] など...
私の限られた XML 構文解析の知識が役に立ちました。私が本当に知っているのは、単一の要素を抽出する方法だけです。例えば
doc = REXML::Document.new(xmlData)
doc.elements.each("CallResult/Success") do |ele|
p ele.text;
end
各「ZoneInfo」要素から情報を抽出するだけでループする方法について、誰かがさらに情報を提供してくれますか?
ありがとう