<?xml version="1.0" encoding="utf-8" ?>
<main>
<car name="奥迪">
<xinghao>A4</xinghao>
<xinghao>A6</xinghao>
</car>
<car name="本田">
<xinghao>自动</xinghao>
<xinghao>越野</xinghao>
</car>
<car name="丰田">
<xinghao>自动</xinghao>
<xinghao>越野</xinghao>
</car>
<car name="奇瑞QQ">
<xinghao>自动</xinghao>
<xinghao>越野</xinghao>
</car>
<car name="宝马">
<xinghao>S250</xinghao>
<xinghao>S360</xinghao>
</car>
</main>我想提取里面
<car name="宝马">
<xinghao>S250</xinghao>
<xinghao>S360</xinghao>
</car>
的S250,S360信息,请问如何提取。

解决方案 »

  1.   

    这个XML文件是我自己瞎建的,不知道结构是否合理?
      

  2.   

    先把这个xml弄成xmldocument
    如果是个文件
    就直接loadXmlDocument doc = new XmlDocument();
    doc.Load(path);如果是个字符串,用loadxml
    doc.LoadXml(string);XmlNode node = doc.SelectSingleNode("/main/car[@name='宝马']");这个node就是<car name="宝马">这个节点
    然后你就可以得到你想要得了
      

  3.   

    惭愧,后面的代码怎么写,不会啊! XmlDocument doc = new XmlDocument();
    doc.Load(MapPath(@"XML\车型号.xml")); XmlNode node = doc.SelectSingleNode("main/car[@name='奥迪']");
    foreach(XmlNode n in node.ChildNodes)
    DropDownList3.Items.Add(n.Value);我这样写不对
      

  4.   

    已经搞定
    DropDownList3.Items.Clear();
    XmlDocument doc = new XmlDocument();
    doc.Load(MapPath(@"XML\车型号.xml")); XmlNode node = doc.SelectSingleNode("main/car[@name='"+DropDownList2.SelectedValue+"']"); XmlNodeList xnl=node.ChildNodes;
    foreach(XmlNode n in xnl)
    DropDownList3.Items.Add(n.InnerXml);
    谢谢各位