1
注:我處理XML文件,我不知道提前它們的結構,所以我不能使用XPath
這裏是我的XML文件的例子:如何獲取節點及其子節點使用節點的名稱和特定的屬性值?
<?xml version="1.0" encoding="ISO-8859-1" standalone="yes" ?>
<HWData>
<Header time="2013-05-29T13:39:34" uploaded="true" version="1.0" />
<NE vendorName="Nokia Siemens Networks" NEId="WBTS-431">
<EQHO vendorName="Nokia Siemens Networks" equipmentHolderId="173" >
<UNIT vendorName="N" unitId="16" />
<UNIT vendorName="NOKIA SIEMENS NETWORKS" unitId="225" />
</EQHO>
<EQHO vendorName="NSN" equipmentHolderId="40192" >
<UNIT vendorName="AR" unitId="40267" />
</EQHO>
</NE>
<NE vendorName="Nokia Siemens Networks" NEId="WBTS-261">
<EQHO vendorName="Nokia Siemens Networks" equipmentHolderId="132" >
<EQHO vendorName="Nokia Siemens Networks" equipmentHolderId="132-1">
<UNIT vendorName="NN" unitId="1621" />
</EQHO>
</EQHO>
</NE>
</HWData>
我想知道我是否可以使用例如節點名稱「NE」和屬性值NEID =「WBTS-261」作爲結果的洞!
結果預計:
<NE vendorName="Nokia Siemens Networks" NEId="WBTS-261">
<EQHO vendorName="Nokia Siemens Networks" equipmentHolderId="132" >
<EQHO vendorName="Nokia Siemens Networks" equipmentHolderId="132-1">
<UNIT vendorName="NN" unitId="1621" />
</EQHO>
</EQHO>
</NE>
有人可以把我放在正確的方式做到這一點的任何例子,想法或建議將感激.. 謝謝
EQHO的MOID是所有情況下UNIT子元素的MOID的前綴(在您的xml示例中)。這是不是真的?當總是真實的時候,找到所有EQHO元素然後列出他們的孩子就足夠了。當不總是真時,那麼對於UNIT MOID-s需要父母MOID前綴檢查。這是要完成的任務嗎? –