<?xml version="1.0" encoding="gb2312"?>  <QuickAsh> 
      <Time Point = "12:15">
          <PD301>0.0</PD301>
          <CleanCoal>0.0</CleanCoal>
          <MiddleCoal>0.0</MiddleCoal>
          <Gangue>0.0</Gangue>
      </Time >
      <Time Point = "13:15">
          <PD301>35.04</PD301>
          <CleanCoal>9.05</CleanCoal>
          <MiddleCoal>26.50</MiddleCoal>
          <Gangue>73.62</Gangue>
      </Time >  </QuickAsh>现在我想得到12.15 这个属性值,求解

解决方案 »

  1.   

              string xml = @"<?xml version=""1.0"" encoding=""gb2312""?>  <QuickAsh> 
          <Time Point = ""12:15"">
              <PD301>0.0</PD301>
              <CleanCoal>0.0</CleanCoal>
              <MiddleCoal>0.0</MiddleCoal>
              <Gangue>0.0</Gangue>
          </Time >
          <Time Point = ""13:15"">
              <PD301>35.04</PD301>
              <CleanCoal>9.05</CleanCoal>
              <MiddleCoal>26.50</MiddleCoal>
              <Gangue>73.62</Gangue>
          </Time >  </QuickAsh>";            XDocument doc=XDocument.Parse(xml);
                var Query = from node in doc.Element("QuickAsh").Elements("Time")
                            where node.Attribute("Point").Value == "12:15"
                            select node;
                foreach (var v in Query)
                {
                    Console.WriteLine("PD301={0}  CleanCoal={1}   MiddleCoal={2}  Gangue={3}",
                        v.Element("PD301").Value, v.Element("CleanCoal").Value, v.Element("MiddleCoal").Value,
                        v.Element("Gangue").Value);
                }            /*
                PD301=0.0  CleanCoal=0.0   MiddleCoal=0.0  Gangue=0.0             */
      

  2.   


    ===============================================是不是我没表达清自己的意思:我只想取出来  time 结点下的Point属性的值:12:15或者 13:15
      

  3.   

                string xml = @"<?xml version=""1.0"" encoding=""gb2312""?>  <QuickAsh> 
          <Time Point = ""12:15"">
              <PD301>0.0</PD301>
              <CleanCoal>0.0</CleanCoal>
              <MiddleCoal>0.0</MiddleCoal>
              <Gangue>0.0</Gangue>
          </Time >
          <Time Point = ""13:15"">
              <PD301>35.04</PD301>
              <CleanCoal>9.05</CleanCoal>
              <MiddleCoal>26.50</MiddleCoal>
              <Gangue>73.62</Gangue>
          </Time >  </QuickAsh>";            Console.WriteLine("LINQ TO XML");
                XDocument doc = XDocument.Parse(xml);
                var Query = from node in doc.Element("QuickAsh").Elements("Time")
                            select new { Point = node.Attribute("Point").Value };
                foreach (var v in Query)
                {
                    Console.WriteLine(v.Point);
                }            //或者
                Console.WriteLine("\r\n");
                System.Xml.XmlDocument D = new System.Xml.XmlDocument();
                D.LoadXml(xml);
                foreach (System.Xml.XmlNode n in D.SelectNodes("QuickAsh/Time"))
                {
                    Console.WriteLine(n.Attributes["Point"].Value);
                }
                /*
                LINQ TO XML
                12:15
                13:15
                12:15
                13:15
                */
      

  4.   

    You can use linq to xml to operate this xml file.
      

  5.   

     ((XmlElement)doc.DocumentElement[节点名]).GetAttribute(节点属性)