xml file:
<?xml version="1.0" encoding="gb2312"?>
<DATA000022200612>
    <area>
        <areaid>110000</areaid>
    <item>
        <PK>
            <key>10010001</key>
      <intervaltype>5</intervaltype>
</PK>
    <value>1878.85</value>
    <remark></remark>
</item>
    <item>
        <PK>
            <key>10020001</key>
           <intervaltype>5</intervaltype>
        </PK>
    <value>18550.94</value>
    <remark></remark>
</item>
    <item>
        <PK>
            <key>10020002</key>
      <intervaltype>5</intervaltype>
</PK>
    <value>54130.9</value>
    <remark></remark>
</item>
</area>
    <area>
        <areaid>120000</areaid>
    <item>
        <PK>
            <key>10010001</key>
      <intervaltype>5</intervaltype>
</PK>
    <value>2344.59</value>
    <remark></remark>
</item>
    <item>
        <PK>
            <key>10020001</key>
      <intervaltype>5</intervaltype>
</PK>
    <value>10621.42</value>
    <remark></remark>
</item>
</area>
</DATA000022200612>
读取xml文件,并将数据显示在一个DataGridView 中:
DataTable td = new DataTable();
            td.Columns.Add(new DataColumn("areaid",typeof(string)));
            td.Columns.Add(new DataColumn("key",typeof(string)));
            td.Columns.Add(new DataColumn("value",typeof(string)));
            FileStream fs = new FileStream("D:\\WordNetSearch\\data.xml", FileMode.Open, FileAccess.Read, FileShare.Read);
            XmlDocument xmlDocument = new XmlDocument();
            xmlDocument.Load(fs);
            XmlElement root = xmlDocument.DocumentElement;
            XmlNodeList nodes = root.ChildNodes;
           
            
            for (int i = 0; i < nodes.Count; i++)
            {
                XmlNode area = nodes[i];
                if (null == area) continue;
                
                string areaText = null;
                XmlNode areaid = area.SelectSingleNode("areaid");
                areaText = areaid.InnerText;
                XmlNodeList items = nodes[i].SelectNodes("item");
                if (null == items) continue;
                string key = null;
                string value = null;
                for (int j = 0; j < items.Count; j++)
                {
                    //XmlNode itemNode = item[j];
                    key = items[j].SelectSingleNode("PK/key").InnerText;
                    value = items[j].SelectSingleNode("value").InnerText;
                    DataRow dr = td.NewRow();
                    dr["areaid"] = areaText;
                    dr["key"]   = key;
                    dr["value"] = value;
                    td.Rows.Add(dr);
                }
                
            }
            dataGridView1.DataSource = td;
                    
                
                
            
        
浙公网安备 33010602011771号