主程序
class Program
{
static void Main(string[] args)
{
List<Skill> skillList = new List<Skill>();
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load("xml技能信息.txt");
XmlNode skillListNode = xmlDoc.FirstChild.FirstChild;//获得<span style="font-family: Arial, Helvetica, sans-serif;">节点</span>SkilList
XmlNodeList skillNodeList = skillListNode.ChildNodes;//获得<span style="font-family: Arial, Helvetica, sans-serif;">节点</span>Skill
foreach (XmlNode skillNode in skillNodeList)
{
Skill skill = new Skill();
XmlElement ele = skillNode["Name"];//根据索引获得元素Name
skill.Name = ele.InnerText;//获得节点Name的文本
XmlAttributeCollection col = skillNode.Attributes;//获取Skill结点属性的集合
skill.Id = Int32.Parse(col["SkillID"].Value);//通过字符串索引器 获取SkillID的值(20002)
skill.EngName = col["SkillEngName"].Value;
skill.TriggerType = Int32.Parse(col["TriggerType"].Value) ;
skill.ImageFile = col["ImageFile"].Value;
skill.AvailableRace = Int32.Parse(col["AvailableRace"].Value);
skillList.Add(skill);
}
foreach (Skill s in skillList)
{
Console.WriteLine(s);
}
}
}
class Skill
{
public int Id { get; set; }
public string Name { get; set; }
public string EngName { get; set; }
public int TriggerType { get; set; }
public string ImageFile { get; set; }
public int AvailableRace { get; set; }
public override string ToString()
{
return string.Format("Id: {0}, Name: {1}, EngName: {2}, TriggerType: {3}, ImageFile: {4}, AvailableRace: {5}", Id, Name, EngName, TriggerType, ImageFile, AvailableRace);
}
}
XML文本
<SkillInfo>
<SkillList>
<Skill SkillID="20002" SkillEngName="Smash" TriggerType="1" ImageFile="data/gfx/image/gui_icon_skill_000.dds" AvailableRace="7">
<Name>重击</Name>
</Skill>
<Skill SkillID="20003" SkillEngName="Hide" TriggerType="2" ImageFile="data/gfx/image/gui_icon_skill_001.dds" AvailableRace="1">
<Name>隐身</Name>
</Skill>
<Skill SkillID="20004" SkillEngName="Ikari" TriggerType="3" ImageFile="data/gfx/image/gui_icon_skill_002.dds" AvailableRace="1">
<Name>怒之翼</Name>
</Skill>
<Skill SkillID="20005" SkillEngName="Revenge" TriggerType="5" ImageFile="data/gfx/image/gui_icon_skill_003.dds" AvailableRace="2">
<Name>光之复仇</Name>
</Skill>
</SkillList>
</SkillInfo>