日期:2014-05-18  浏览次数:20440 次

求获得XML数据的方法
XML code

- <xml>
  <message>ok</message> 
  <nu>1777210192</nu> 
  <com>yuantong</com> 
  <status>1</status> 
- <data>
  <time>2012-03-14 18:05:40</time> 
  <context>四川省内江市/PDA正常签收扫描/签收人:已签收</context> 
  </data>
- <data>
  <time>2012-03-14 08:57:26</time> 
  <context>四川省内江市/派件扫描/派件人:钟明长</context> 
  </data>
- <data>
  <time>2012-03-14 08:24:28</time> 
  <context>四川省内江市/拆包扫描</context> 
  </data>
- <data>
  <time>2012-03-13 17:24:08</time> 
  <context>成都分拨中心/装件入包扫描</context> 
  </data>
- <data>
  <time>2012-03-13 17:22:38</time> 
  <context>成都分拨中心/拆包扫描</context> 
  </data>
- <data>
  <time>2012-03-12 21:13:33</time> 
  <context>上海分拨中心/装件入包扫描</context> 
  </data>
- <data>
  <time>2012-03-12 21:09:44</time> 
  <context>上海分拨中心/下车扫描</context> 
  </data>
- <data>
  <time>2012-03-12 19:06:33</time> 
  <context>上海市普陀区曹杨长风/揽收扫描/取件人:陶德全</context> 
  </data>
- <data>
  <time>2012-03-12 18:57:14</time> 
  <context>上海市普陀区曹杨长风/业务员收件/取件人:陶德全</context> 
  </data>
  <state>3</state> 
  </xml>



求获得第一条记录的<time> 和 最后一条记录<time> 的方法!

即取到值2012-03-12 18:57:14和2012-03-14 18:05:40

------解决方案--------------------
简单写的。没测试
C# code

 XmlNodeList xnlist = xmlDoc.SelectSingleNode("xml//data").ChildNodes;//获取根节点的子节点
            foreach (XmlNode xn in xnlist)//遍历节点
            {
                XmlElement xe = (XmlElement)xn;
                XmlNode firstnode = xe.FirstChild;  //获取文档的第一个节点
                XmlNode lastnode = xe.LastChild; //获取文档的最后一个节点
                foreach (XmlNode e1 in firstnode.ChildNodes)
                {
                    MessageBox.Show(e1.Attributes["time"].Value);
                }
                foreach (XmlNode e2 in lastnode.ChildNodes)
                {
                    MessageBox.Show(e2.Attributes["time"].Value);
                }
            }