using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.SqlServer.Server;
namespace XML文件
{
///<summary>/// 技能类///</summary>
class Skill
{
publicint Id;
publicstring Name;
publicint Damage;
publicstring Lang;
publicoverridestringToString()
{
returnstring.Format("Id:{0},Name:{1},Lang:{2},Damage:{3}",Id,Name,Lang,Damage);
}
}
}
Program.cs:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Xml;
namespace XML文件
{
class Program
{
staticvoid Main(string[] args)
{
//创建技能信息集合
List<Skill> skillList = new List<Skill>();
//专门用来解析xml文档
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load("SkillInfo.txt");//加载xml文件//1.得到根节点
XmlNode rootNode = xmlDoc.FirstChild;
XmlNodeList skillNodeList = rootNode.ChildNodes;//用来获取当前节点下面的所以子节点foreach (XmlNode skillNode in skillNodeList)
{
Skill skill = new Skill();
XmlNodeList fieldNodeList = skillNode.ChildNodes;//获取skill节点下的所以节点foreach (XmlNode fieldNode in fieldNodeList)
{
if (fieldNode.Name == "id")
{
skill.Id = int.Parse(fieldNode.InnerText);//获取节点内部的文本
}
elseif (fieldNode.Name == "name")
{
skill.Name = fieldNode.InnerText;
skill.Lang = fieldNode.Attributes[0].Value;//获取属性的值
}
elseif(fieldNode.Name == "damage")
{
skill.Damage = int.Parse(fieldNode.InnerText);
}
}
skillList.Add(skill);
}
foreach (Skill s in skillList)
{
Console.WriteLine(s);
}
}
}
}