xml文件:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<HeadSelect xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<info HeadID="1">
<Head_Name>精灵男</Head_Name>
<Head_Type>1</Head_Type>
<Atlas>TeamHead2</Atlas>
<Atlas_Num>16</Atlas_Num>
<Used_Condition>0</Used_Condition>
<Account_Level>1</Account_Level>
</info>
<info HeadID="2">
<Head_Name>精灵女</Head_Name>
<Head_Type>2</Head_Type>
<Atlas>TeamHead2</Atlas>
<Atlas_Num>17</Atlas_Num>
<Used_Condition>0</Used_Condition>
<Account_Level>1</Account_Level>
</info>
</HeadSelect>
解析如下:
public class ReadHeroHeadConfig
{
XmlDocument xmlDoc = null;
public ReadHeroHeadConfig(string xmlFilePath)
{
//TextAsset xmlfile = Resources.Load(xmlFilePath) as TextAsset;
ResourceUnit xmlfileUnit = ResourcesManager.Instance.loadImmediate(xmlFilePath, ResourceType.ASSET);
TextAsset xmlfile = xmlfileUnit.Asset as TextAsset;
if (!xmlfile)
{
Debug.LogError(" error infos: 没有找到指定的xml文件:" + xmlFilePath);
}
xmlDoc = new XmlDocument();
xmlDoc.LoadXml(xmlfile.text);
XmlNodeList infoNodeList = xmlDoc.SelectSingleNode("HeadSelect").ChildNodes;
for (int i = 0; i < infoNodeList.Count; i++)//XmlNode xNode in infoNodeList)
{
if ((infoNodeList[i] as XmlElement).GetAttributeNode("HeadID") == null) continue;
string typeName = (infoNodeList[i] as XmlElement).GetAttributeNode("HeadID").InnerText;
HeadSelectConfigInfo HeadSelectInfo = new HeadSelectConfigInfo();
HeadSelectInfo.HeroHeadID = Convert.ToInt32(typeName);
foreach (XmlElement xEle in infoNodeList[i].ChildNodes)
{
#region 搜索
switch (xEle.Name)
{
case "Head_Name":
HeadSelectInfo.HeroHeadName = Convert.ToString(xEle.InnerText);
break;
case "Head_Type":
HeadSelectInfo.HeroHeadType = GameMethod.ResolveToIntList(xEle.InnerText);
break;
case "Atlas":
HeadSelectInfo.HeroHeadAtlas = Convert.ToString(xEle.InnerText);
break;
case "Atlas_Num":
HeadSelectInfo.HeroHeadAtlas_Num = xEle.InnerText;
break;
case "Used_Condition":
HeadSelectInfo.HeroUsedCondition = Convert.ToInt32(xEle.InnerText);
break;
case "Account_Level":
HeadSelectInfo.HeroUsedLevel = Convert.ToInt32(xEle.InnerText);
break;
}
#endregion
}
ConfigReader.headSelectXmlInfoDict.Add(HeadSelectInfo.HeroHeadID, HeadSelectInfo);
}
}
//public st
}
FR:海涛高软(hunk Xu)
QQ技术交流群:386476712