Xpath如何获取xml重复节点下的重复节点 100
想要获取C的节点集,但是直接用XmlNodeListnodes=xmlDoc.SelectNodes("AS/A/BS/B/C");获取不到节点集,请问应该怎么用xpat...
想要获取C的节点集,但是直接用XmlNodeList nodes=xmlDoc.SelectNodes("AS/A/BS/B/C"); 获取不到节点集,请问应该怎么用xpath获取到C的节点集?
<AS>
<A>
<M></M>
<BS>
<B>
<C>11</C>
<D>12</D>
</B>
<B>
<C>13</C>
<D>14</D>
</B>
</BS>
</A>
<A>
<M></M>
<BS>
<B>
<C>21</C>
<D>22</D>
</B>
<B>
<C>23</C>
<D>24</D>
</B>
</BS>
</A>
</AS> 展开
<AS>
<A>
<M></M>
<BS>
<B>
<C>11</C>
<D>12</D>
</B>
<B>
<C>13</C>
<D>14</D>
</B>
</BS>
</A>
<A>
<M></M>
<BS>
<B>
<C>21</C>
<D>22</D>
</B>
<B>
<C>23</C>
<D>24</D>
</B>
</BS>
</A>
</AS> 展开
1个回答
展开全部
namespace Test {
class Program {
static void Main(string[] args) {
XDocument xdoc = XDocument.Load("data.XML");
//调用方法查找到节点并修改
SearchEle(xdoc.Root);
//保存
xdoc.Save("data.xml");
Console.WriteLine("修改成功");
Console.ReadKey();
}
public static void SearchEle(XElement root){
foreach (XElement item in root.Elements()) {
if (item.Name == "C") {
if (item.Value=="李四") {
item.SetAttributeValue("id", 123);
}
}
//如果有子节点则递归
SearchEle(item);
}
}
}
}
class Program {
static void Main(string[] args) {
XDocument xdoc = XDocument.Load("data.XML");
//调用方法查找到节点并修改
SearchEle(xdoc.Root);
//保存
xdoc.Save("data.xml");
Console.WriteLine("修改成功");
Console.ReadKey();
}
public static void SearchEle(XElement root){
foreach (XElement item in root.Elements()) {
if (item.Name == "C") {
if (item.Value=="李四") {
item.SetAttributeValue("id", 123);
}
}
//如果有子节点则递归
SearchEle(item);
}
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询