做一个C#小程序,现在需要读取XML文件里的数据,XML文件格式如下:
<?xml version="1.0" encoding="GB2312"?>
<sms> 
 <status>0</status> 
 <reports> 
   <report>
       <id>1776033</id> 
       <phone>15935555555</phone> 
       <status>1</status> 
   </report>
   <report> 
       <id>1776034</id> 
       <phone>13626666666</phone>
       <status>1</status> 
   </report> 
 </reports>
 <count>1</count>
</sms>现在需要获取report节点里面的内容 id/phone/statusreport节点有多个用dataset获取的话只能获取到status和count,reports 里面的节点获取不到,
请问这个需要用什么方法来获取。

解决方案 »

  1.   

    本帖最后由 net_lover 于 2012-07-02 13:51:10 编辑
      

  2.   

    主要是 Dataset 用起来很方便。
      

  3.   

    你这个xml格式不是DataSet的格式,转成DataSet只能认出2个字段
      

  4.   

    XmlDocument xDoc = new XmlDocument();
    xDoc.LoadXml("源");
    XmlNodeList xNodelist;
    xNodelist = xDoc.SelectNodes("sms/reports");
    foreach (XmlNode xNode in xNodelist)
    {
      foreach (XmlElement item in secnode)
      {
           //item.InnerText节点值 item.Name节点名
           item.Name + item.InnerText;
      }
    }
      

  5.   

    测试了N遍才发现,源文件只有一个report节点。