innertext返回所有子文本和self-text.除了一个孩子的短信,我该怎么办

本文关键字:孩子 一个 我该怎么办 返回 文本 self-text innertext | 更新日期: 2023-09-27 18:28:55

我有一个xml文件

<first>
   first1
   <second>second1</second>
   first2
   <third>third1</third>
   first3
</first>

我想阅读<first>的自文本和<third>的子文本,除了子<second>

答案应该是

first1 first2 third1 first3

我试过了:

.select(descendant::first1[not(descendant::second)]

但它不起作用。需要sug

innertext返回所有子文本和self-text.除了一个孩子的短信,我该怎么办

  XElement elem = XElement.Parse(xml);      
  var query = (from e1 in elem.Nodes()
                    where e1.GetType() == typeof(XText)
                    select (e1 as XText).Value.Trim())
                    .Union(from e2 in elem.Descendants()
                               where e2.Name.LocalName.Equals("third")
                               select e2.Value);

尝试获取XMLDocument中的XML并使用它。

 XmlDocument doc = new XmlDocument();
  doc.LoadXml(xml);
  var nodes = doc.DocumentElement.ChildNodes;
  StringBuilder result = new StringBuilder();
  foreach (XmlNode node in nodes)
  {
    if (!node.Name.Equals("second"))
    {
      result.Append(node.InnerText);
      result.Append(" ");
    }
  }

希望它能解决你的问题。