2017-05-07 40 views
1
Please help me in this code 
I am suing a nested XML like 

    <agn:TXLife xmlns:agn="http://ACORD.org/Standards/Life/2/Sales/v1" xmlns:ext="http://allstate.com/dmea/Sales/v1"> 
    <agn:OLifEExtension> 
       <agn:OLifEExtension> 
        <ext:NetworkID>JBROWN</ext:NetworkID> 
       </agn:OLifEExtension> 
       </agn:OLifEExtension> 
    </agn:TXLife> 

我無法獲取networdID「JBROWN」。請在此建議我。在XML中具有嵌套循環的XML解析

+0

在哪種語言,你要分析此XML? –

+0

歡迎來到計算器。請,你能提供一些你的具體問題的代碼嗎?這可以證明你嘗試了多遠,它會幫助其他成員更好地理解你的問題,當時,你會給他們一個你的問題的背景。請檢查這些鏈接:https://stackoverflow.com/help/mcve和https://stackoverflow.com/help/how-to-ask –

+0

XDOC的XDocument = XDocument.Load(路徑); xDoc.Descendants(AGN + 「OLifEExtension」)。後代(),選擇(p值=>新 { NETWORKID = p.Element(EXT + 「NETWORKID」)。值 })ToList。()。 ForEach(p => {String} Result_OLIFEExtension = p.NetworkID; Logwrite(Result_OLIFEExtension.ToString(),Dtime); }); } –

回答

0

,如果你使用C#,則可以使用 的XmlDocument類下面是一個代碼,可以幫助你:

XmlDocument doc = new XmlDocument(); 
doc.Load(path); 

XmlNode root = doc.FirstChild;//Take the root node 

for (int i = 0; i < root.ChildNodes.Count; i++) 
{ 
    var OLifEExtension = root.ChildNodes[i]; 
    var innerOLifEExtension = OLifEExtension.FirstChild; 
    var NetworkID = innerOLifEExtension.FirstChild; 
    Console.WriteLine("NetworkID: " + NetworkID.InnerText); 
} 
+0

感謝您的快速解決方案: 但是我們無法進入for循環,因爲它顯示的是root.ChildNodes.Count = 0; –

+0

是xml文件,看起來像您發佈的xml文件? – TomerMahari

+0

<?xml version =「1.0」encoding =「utf-8」standalone =「yes」?> ACORD_2.17_EPCSI_20161125 A 2016-11-25