![](https://i-blog.csdnimg.cn/blog_migrate/ed0e455f91793de6f55444b8675bb55d.png)
新建一个xml文件,放在你的C#工程的bin\Debug\netcoreapp3.1目录下
xml的内容为:
<?xml version="1.0" encoding="utf-8"?> <!--注释:编码格式-->
<skills>
<skill>
<id>1</id>
<name lang="cn">半月斩</name>
<damage>500</damage> <!--注释:破环力-->
</skill>
<skill>
<id>2</id>
<name lang="cn">闪现</name>
<damage>10</damage>
</skill>
<skill>
<id>2</id>
<name lang="cn">疾跑</name>
<damage>20</damage>
</skill>
</skills>
C# winform 控制台文件:
using System;
using System.Xml;
namespace xml
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World!");
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load("skills.xml"); //放在debug 下
//XmlNode root = xmlDoc.FirstChild; //不能这么写 不然只会得到它的头一句 编码那句
XmlNode root = xmlDoc.ChildNodes[1]; //得到它的根节点
XmlNodeList skillList = root.ChildNodes;
foreach (XmlNode skill in skillList) //这个就是遍历你文档里面的 sikll节点
{
foreach (XmlNode node in skill.ChildNodes)
{
Console.WriteLine(node.Name +":"+node.InnerText); //通过这样遍历 就能取得里面的节点了
}
}
}
}
}
运行结果:
![](https://i-blog.csdnimg.cn/blog_migrate/cede82e36ab908e921b0fd73aac5e561.png)
这样就把xml的节点都遍历打印出来了
其中的
foreach (XmlNode skill in skillList)
XmlNode skill就是你的xml的节点
<skill>
<id>1</id>
<name>lang="cn">半月斩</name>
<damage>500</damage> <!--注释:破环力-->
</skill>