C#读取XML数据

使用C#读取XML的数据,需要加上using system.XML的引用。C#对XML的支持也是很规范的。

试了一个案例,通过C#读取XML中的数据(需要注意的就是XML中的层级问题,一层一层往下读就可以了)。

XML数据:

<?xml version="1.0" encoding="gb2312"?>  
<RECORDS>
<RECORD>
      <id>423</id>
      <article>我爱你</article>
      <discuss>5</discuss>
      <insertTime>2011/11/18 11:08:16</insertTime>
      <origin>新浪微博</origin>
      <person_id>1043652517</person_id>
      <time>2011/11/13 14:38:32</time>
      <transmit>0</transmit>
</RECORD>
<RECORD>
      <id>424</id>
      <article>我爱你</article>
      <discuss>1</discuss>
      <insertTime>2011/11/18 11:08:16</insertTime>
      <origin>Android客户端</origin>
      <person_id>1043652517</person_id>
      <time>2011/11/13 12:31:59</time>
      <transmit>0</transmit>
</RECORD>
</RECORDS>

C#源码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

using System.Xml;

namespace ReadXML
{
    class Program
    {
        static void Main(string[] args)
        {
            XmlDataDocument xmlDoc = new XmlDataDocument();
            xmlDoc.Load("1234.xml");
           
            XmlNode rootNode = xmlDoc.SelectSingleNode("RECORDS");//这是最高层的node
           
            XmlNodeList secondNode = rootNode.ChildNodes;
            
            foreach (XmlNode node in secondNode)      // 第二层的node
            {
                XmlElement xe = (XmlElement)node;

                XmlNodeList xnl = xe.ChildNodes;

                foreach (XmlNode node1 in xnl)
                {
                    Console.WriteLine(node1.InnerText);     //最底层的node,只要一个遍历就可以了。

                }
            }
            Console.Read();
        }
    }
}

运行截图:

C#读取XML数据_第1张图片


你可能感兴趣的:(xml,数据,C#,遍历)