簡體   English   中英

從XML文件中獲取子節點

[英]Get Child Nodes from an XML File

我有一個XML文件,如下所示

<Attachment>
  <FileName>Perimeter SRS.docx</FileName>
  <FileSize>15572</FileSize>
  <ActivityName>ActivityNamePerimeter SRS.docx</ActivityName>
  <UserAlias>JameelM</UserAlias>
  <DocumentTransferId>7123eb83-d768-4a58-be46-0dfaf1297b97</DocumentTransferId>
  <EngagementName>EAuditEngagementNameNew</EngagementName>
  <Sender>JameelM@orioninc.com</Sender>
</Attachment>

我讀了這些xml文件,如下所示

var doc = new XmlDocument();

doc.Load(files);

foreach (XmlElement pointCoord in doc.SelectNodes("/Attachment"))
{

}

我需要在Attachment節點中獲取每個子節點值。 如何從xml節點列表中獲取這些xml元素?

我需要在Attachment節點中獲取每個子節點值。

你的問題很不清楚,但它看起來很簡單:

foreach (XmlNode node in doc.DocumentElement.ChildNodes)
{
}

畢竟,在您向我們展示的文檔中, Attachment 文檔元素。 不需要XPath。

順便說一句,如果你使用.NET 3.5或更高版本,LINQ到XML是比舊的DOM(一個好得多的 XML API XmlDocument等)的API。

嘗試這個

 var data = from item in doc.Descendants("Attachment")
             select new
             {
                  FileName= item.Element("FileName").Value,
                  FileSize= item.Element("FileSize").Value,
                  Sender= item.Element("Sender").Value
              };
 foreach (var p in data)
     Console.WriteLine(p.ToString());
var doc = new XmlDocument();

doc.Load(files);

foreach (XmlElement pointCoord in doc.SelectNodes("/Attachment"))
{
    if(pointCoord!=null)
    {
        var valueOfElement=pointCoord.InnerText;
    }
}

如果要對元素名稱(UserAlias等)運行條件邏輯,則使用XmlElement的Name屬性。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM